Лучшее - враг хорошего. Долго искать самую лучшую книгу нет смысла.
Читайте любую книгу, а лучше 2-3 разные.
И читая книгу будет недостаточно. Нужна практика, иначе все прочитанное вылетит из головы.
Например, если вы читали художественную книгу месяц назад, вы небось даже имена всех главных героев уже не перечислите, и сюжет еле-еле. Тоже будет и с языком программирования, без практики.