Но популярность вкупе с возрастом имеет и обратную сторону медали — за эти 23 года было издано огромное количество литературы. Некоторые книги стали настоящей классикой, поэтому именно на них ориентируются преподаватели на учебных курсах даже сегодня в 2018 году. Однако это не означает, что за последние годы не издавалось хороших книг. В подтверждение этого, автор GeekBrains Илья Бубнов изучил онлайн-магазины, чтобы найти десяток самых рейтинговых книг по Java, изданных или переизданных на русском языке за последний год.
Java на примерах. Практика, практика и только практика
Начнём мы с книг, наполненных примерами с комментариями, ведь именно в них заложена особая ценность при изучении нынешней версии Java. «Java на примерах» — доработка аналогичной книги Сеттера 2016 года. Тот экземпляр отличался абстрактными задачами, поданными без контекста и с поверхностным подходом, который без использования дополнительной литературы был бесполезным.
Эта книга сделала шаг вперёд в плане качества: код годен для реального применения, информация подаётся правильной дозировкой, а для понимания задач новичку достаточно официальной документации по Java.
Современный Java. Рецепты программирования
В своей книге Коузен рассматривает подходы к решению более чем 70 классических задач. Большинство из них ориентированы на Java SE8, так как именно эта версия совершила мини-революцию в языке, но есть и дополнение из девятой версии.
Эту книгу будет полезно прочитать тем, кто уже учится на курсах или даже имеет пару лет опыта. То есть базовой теории здесь почти нет, зато достаточно много внимания уделено
возможностям обновлённой Java: лямбда-выражениям, функциональным интерфейсам, предикатам и многому другому.
Java для начинающих. Объектно-ориентированный подход
Книга написана профессиональными преподавателями по Java, поэтому с точки зрения подачи материала придраться не к чему. Сначала вы познакомитесь со средой разработки, после этого перейдёте к основам ООП и языка. Всё сопровождается примерами кода и образными сравнениями, у вас не возникнет проблем с пониманием теории.
Ещё один плюс — книга не обрывается на базовых возможностях Java, а затрагивает некоторые моменты продвинутого программирования. Для этого в конце даже есть специальный раздел со сценариями, в которых можно применить изученный материал. Единственное, что может не понравиться в «Java для начинающих», это частые повторения фундаментальных понятий языка. Для новичка это скорее плюс, но если Java для вас просто очередной язык, читать становится тяжеловато.
Java. Карманный справочник
Четвёртое издание популярной серии справочников O’Reilly, обновлённое до версии Java 9. Как и в другим книгах, здесь вы найдёте дублирование официального документа, но с живым языком и более качественной структурой. Естественно, учиться по такой книге достаточно тяжело, а вот купить и положить на рабочий стол будет очень полезно.
Java для чайников
Ещё одна классическая серия книг. Как подобает серии, здесь очень много практической, пошаговой теории, которая позволит человеку, даже далёкому от программирования, понять и проникнуться Java. Это не практический учебник и не справочник; это книга, которую можно прочитать один раз и понять, хочешь ли ты двигаться дальше. Она обновлена до Java 9 и переиздана в 2018 году. Но для долгого объяснения ООП и базовых программ версия не имеет значения.
Java 9. Полный обзор нововведений. Для быстрого ознакомления и миграции
Название книги однозначно показывает целевую аудиторию. Эта книга не подойдёт новичкам, тем, кто слабо знаком с программированием в целом и с Java в частности. Однако тем, кто изучал Java много лет назад, а теперь потребовалась бумажная книга, где в терминах описаны изменения девятой версии — это полезная литература. Адаптация книга прошла безболезненно, поэтому для людей, которые давно дружат с Java, будет полезно купить «Полный обзор нововведений» и положить на ближайшую книжную полку.
Java SE 9. Базовый курс
Кей Хорстманн — автор нескольких известнейших книг по Java. Конкретно эта будет интересна не столько теорией, хотя здесь её хватает, сколько способом подачи и последующей практикой. Информация подаётся небольшими порциями и тут же закрепляется в упражнениях. С точки зрения усвояемости такой подход полезен большинству людей, однако в качестве справочника такая книга имеет явный недостаток — стандартная темы может быть растянута на несколько страниц.
Java SE от Хорстманна, пожалуй, одна из самых популярных учебных книг по языку. Поэтому если информация в предыдущих книгах вам показалось слишком сжатой, сложной для понимания, то здесь вы точно этого не почувствуете.
Изучаем Java EE. Современное программирование для больших предприятий
Профильная книга, что только придаёт ей ценность, Себастьяна Дашнера, в 2016 году удостоившегося звания Java-champion (это очень круто, если что). Это не книга для обучения языку, она, скорее, подойдёт тем, кто собрался перейти от прикладного уровня к созданию корпоративных приложений. Здесь есть всё необходимое: общие принципы создания таких продуктов, организация работы по принципу DevOps, фундаментальные основы для создания тестов.
Java. Полное руководство
Герберт Шилдт — автор множества книг не только по Java, но и по другим языкам. Данная работа — та самая классика, причём обновлённая уже в десятый раз до версии Java 9. На почти полутора тысячах страниц вам предстоит путь от изучения принципов ООП до компонентов JavaBeans. Здесь много теории и примеров с комментариями, в общем, всё то, что хочется видеть новичку в, быть может, единственной бумажной книге по программированию.
В мировой практике книга Шилдта также является общепризнанной must-read, входит в топ на Amazon и фигурирует практически во всех рейтингах лучших публикаций по Java. Издание на русском языке не испортило оригинал, а значит к прочтению строго рекомендуется.
Изучаем Java
Книга популярной серии Head First — определённый знак качества для тех, кто хочет быстро вникнуть в незнакомую тему. Здесь есть всё, чтобы новичку познакомиться с языком: юмор, иллюстрации, упражнения, примеры с комментариями. При этом вам даже не обязательно знать основы программирования, здесь всё подробно расписано.
Если говорить о недостатках, то это, конечно же, слабая актуальность книги. Английская версия была издана аж 13 лет назад, то есть от современных возможностей Java она невероятно далека. Для начала подойдёт, но в качестве настольного справочника лучше держать другие книги.
Java. Библиотека профессионала
Завершим мы рейтинг одним важным примером того, почему программисту нужно знать английский язык и использовать оригинальную литературу. «Java. Библиотека профессионала» — ещё одна отличная книга Хорстманна, давно ставшая классикой. Состоит из двух томов «Основы» и «Расширенные средства программирования», каждый под 1000 страниц, поэтому на нехватку информации точно не пожалуетесь. Это уже 10-е по счёту издание, в России оно появилось в конце 2017 года. Оно посвящено Java SE 8, хотя сейчас актуальна уже 9 версия, но не это самое страшное. К сожалению, как это часто бывает, адаптация не прошла бесследно — перевод и экономия на печати сильно понизили градус крутости труда Кей С. Хорстманна. Вам придётся столкнуться с такой дикостью, как, например, перевод аббревиатуры IDE (тут он ИСР). В изучении языка вам это не помешает, но если вы совсем зелёный программист, можете понабраться неправильных слов.
В связи с последним примером, возник важный вопрос: а какие книги вы НЕ рекомендуете покупать из-за «кривой» адаптации?
Комментарии (9)
fRoStBiT
31.08.2018 19:29+2Странная подборка (для совсем начинающих?), учитывая отсутствие must have бестселлера Effective Java.
ViceCily
31.08.2018 19:36Кто-нибудь читал Just Java 5th edition. Оно на английском и по 1.5. Но посмотрите и вы поймёте, что это лучшая литература по Java за все время. Она не учит ООП с нуля. Она действительно описывает особенности Java и делает это несмотря на разницу 1.5 и 1.9(9) версии. Да, там нет лямбд. Но прочитайте про них отдельно.
bulavin
31.08.2018 21:01Есть с чем сравнивать? Что ещё читали? Не переводили на русский её?
ViceCily
02.09.2018 15:55Если говорить про Java, то в качестве полной противоположности предложенной книге, могу упомянуть Шилдта. Там все подробно, включая ООП с нуля. Эккель что-то среднее между Линденом и Шилдтом, но ближе все-таки к Шилдту. Блоха тоже стоит отметить в качестве хорошего примера.
А если отойти от Java и интересует программирование с нуля, то очень хорошо, как мне кажется, его преподносит Колин Мук. К сожалению, пишет про ActionScript 3.0.
dplsoft
02.09.2018 09:59А почему тут нет Mala Gupta? её подготовка к сертификационному экзамену OCA — лучшее руководство по яыку Java какое я только видел.
написана на анлийском, но язык простой, читается без проблем.
кстати, никто не хочет взяться за перевод?
bulavin
Не рекомендую русский перевод «Структуры данных и алгоритмы в Java» Роберта Лафоре издательства Питер. Первая моя книга по Java — мало того, что в предисловии вместо Java пишут JavaScript, но что хуже всего — большая часть примеров не запускается, напсиховался, еще не начав толком программировать.