Топ-10 книг по Java для начинающих!

1. “Head First Java, Изучаем Java”
Авторы: Кэти Сьерра и Берт Бэйтс.
Достоинства:
Лучший самоучитель Java с нуля, для полных чайников, написан живым языком;
Прикольные иллюстрации и юмор;
Пояснения с жизненными примерами.
Недостатки:
Многовато «воды» для тех, кто уже въехал в тему;
Не всегда удачные паззлы и упражнения.

 

2. “Java. Руководство для начинающих”
Автор: Герберт Шилд.
Достоинства:
Традиционное вдумчивое изложение основ;
Хорошие примеры.
Недостатки:
Есть «прыжки» от «слишком разжевано» до «мельком сказано»;
Местами скучновато.

 

3.”Java для чайников”
Автор: Барри Бёрд.
Достоинства:
Лёгкий язык;
Дельные советы и удачное введение в ряд тем (главы 1,2, 4);
Хорошие примеры.
Недостатки:
Не все темы изложены одинаково хорошо;
Авторский стиль может и не нравиться.

 

4. “Java. Полное руководство”
Автор: Герберт Шилдт.
Достоинства:
Полное руководство. Кажется, там есть все темы, которые нужно знать новичку, и не только новичку.
Подробные пояснения.
Недостатки:
Много воды (но это кому-то может нравиться!);
Русский перевод не лучший.

 

5. “Java. Библиотека профессионала
Авторы: Кей С. Хорстманн и Гари Корнелл.
Достоинства:
При впечатляющем количестве страниц — мало воды (в отличие от Шилдта).
Содержит всё, что нужно новичкам.
Раскрывает Java 8, учитывает изменения в JDK 9, 10 и 11.
Хорошая подача тем по коллекциям и дженерикам.
Очень хорошо сочетается с JavaRush. Доходите до темы, решаете задачки, в какой-то момент что-то не понимаете — смотрите Хорстманна, пробуете снова.
Недостатки:
Кому-то может показаться, что книга суховата;
Нет практики;
Русский перевод с ляпами.

 

6. “Java. Методы программирования”
Автор: Блинов Романчик.
Достоинства:
Отличная подборка задач и тестовых заданий;
Есть официальная бесплатная версия (я полагаю, что она официальная, поскольку лежит не на каком-нибудь рутрекере, а на сайте EPAM);
Сравнение с С++.
Возможность понять, что проходят на стажировке EPAM.
Недостатки:
Слишком фундаментальное изложение. Но для повторения с практикой — подойдёт.
Не учитывает Java 8 и последующих JDK. Впрочем, в этой книге главное — удачный подбор задач.

 

7. “Java. Справочник разработчика”
Авторы: Бенджамин Дж. Эванс, Дэвид
Флэнаган.
Достоинства:
Краткое и хорошее изложение;
Есть всё, что нужно;
Хорошее описание современных инструментальных средств;
Удачные примеры.
Недостатки:
Не всегда удачный перевод терминологии (есть термины, которые “обычные” русскоговорящие разработчики сходу не поймут).

 

8. “Java SE 9. Базовый курс”
Автор: Кей Хорстманн.
Достоинства:
Краткость информационных блоков. Всё по делу;
Нет лишних тем;
Очень хороший подбор актуальных тем для изучения начинающими Java-программистами;
Удачные примеры.
Недостатки:
Книга не подходит для тех, кто начинает изучать программирование с нуля и до этого ни разу с ним не сталкивался.

 

9. “Effective Java”
Автор: Джошуа Блох.
Достоинства:
Блестящее изложение материала по теме ООП.
Приведены лучшие практики программирования.
Автор очень хорошо знает Java изнутри.
Недостатки:
Новичкам может показаться сложной.

 

10. “Философия Java”
Автор: Брюс Эккель.
Достоинства:
Глубокое изложение принципов Java от профессионала;
Хорошо зайдет тем, кто переходит с других языков — много сравнений с С++, например.
Как мне кажется, её можно начинать читать уровня с 10-го, а вот Эккеля — чуть позднее.
Недостатки:
Очень неудачные русские переводы;
Отсутствие нового издания книги на русском.