книги по разработке web приложений на java
«На лучшем языке писать имеешь право»: книги по программированию на Java
Авторизуйтесь
«На лучшем языке писать имеешь право»: книги по программированию на Java
В отличие от прошлой подборки, сейчас мы подготовили для вас список книг для прошаренных Java-программистов. Здесь вы найдете различные материалы и практические руководства по изучению языка с примерами и подробным разбором всех тонкостей работы.
Microservices for Java Developers
Микросервисы — это полезно, но у них есть и недостатки. В этой книге доступно рассказывается, как пользоваться популярными фреймворками вроде Dropwizard и Spring Boot и как разворачивать и поддерживать масштабируемые микросервисы при помощи Linux-контейнеров.
Head First. Программирование для Android
Надеемся, вам не нужно рассказывать, что такое Android и какие преимущества дает умение создавать приложения под него, а по словам авторов, это пособие — как опытный Android-разработчик рядом с вами.
Прочитав эту книгу, вы наконец-то сможете реализовать ту самую «взрывную» идею приложения или игры: вы узнаете, как правильно задать структуру своего приложения, создать к нему интерфейс и базу данных, а также как сделать, чтобы оно работало на самых разных смартфонах и планшетах, и многое другое.
RxJava for Android App Development
RxJava — это популярная среди Android-разработчиков библиотека для обработки асинхронных данных, но разобраться в ней может быть непросто. В этой книге автор рассказывает об основах RxJava и на примере реального сценария показывает, как использование этой библиотеки упрощает реализацию на первый взгляд громоздких задач.
Java. Библиотека профессионала. Том 2
Десятое издание книги, обновленное в соответствии с Java SE 8. Во втором томе рассказывается о новых развитых функциональных возможностях, появившихся в версии Java SE 8, в том числе о новых интерфейсах API для потоков данных, даты, времени и календаря, а также о возможностях разработки графических пользовательских интерфейсов, обеспечения безопасности, написания платформенно-ориентированного кода и многое другое.
Modern Java EE Design Patterns
С приходом DevOps, микросервисов, контейнеров и облачных платформ для разработки пропасть между красивыми решениями и энтерпрайз-разработкой сильно выросла. В этой книге рассказывается о том, как строить современную архитектуру при помощи Java EE.
Java EE паттерны проектирования для профессионалов
В книге рассматриваются фундаментальные возможности Java EE 7, а также теория и практика использования паттернов проектирования на примерах реальных прикладных задач. Не лишним перед прочтением книги будет наличие базовых знаний паттернов проектирования и платформы Java EE.
Java Application Development on Linux
«Java Application Development on Linux» — это практическое руководство по полному жизненному циклу разработки Java-приложений на Linux. Рассматриваются такие темы, как анализ бизнес-логики, проектирование баз данных, пользовательские интерфейсы Java-сервлетов, Server Pages (JSP) и графические интерфейсы Swing и Standard Widget Toolkit (SWT).
Building Back-End Web Apps with Java, JPA and JSF
Эта книга рассказывает о создании бэкенда веб-приложений при помощи Java Server Faces (JSF), Java Persistence API (JPA) и баз данных MySQL. Процесс разбит на 7 шагов и снабжён практическими примерами.
Docker for Java Developers
Для развёртывания Java-приложений обычно требуется установить Java Development Kit (JDK), сервер приложения, веб-сервер, настроить базу данных и другие компоненты дата-центра. Но этот громоздкий процесс можно существенно упростить при помощи Docker-контейнеров. В этой книге рассказывается об основах использования Docker и популярных вспомогательных фреймворков.
Java 3D Programming
Java 3D — это клиентский API для отрисовки интерактивной 3D-графики, который можно применять как в играх, так и в научных визуализациях. Разобраться в нём поможет эта книга, предложив как теорию, так и богатый набор практических приложений. Знание OpenGL и Swing для читателя будет существенным плюсом.
Neural Network Programming with Java
В этой книге подробнейшим образом рассказывается о процессе создания приложений различной сложности на базе нейронных сетей. Каждый тип сетей доступно описывается на примере реальных задач и приложений.
Java Concurrency in Practice
Эта книга посвящена практическому применению техники многопоточного программированию на языке Java. Книгу легко читать, и она снабжена множество примеров.
Если вам интересна тема многопоточности, вам подойдёт наша серия статей «Многопоточное программирование в Java 8»:
Как всегда, если вы знаете книги, которыми стоит поделиться с сообществом, оставляйте их в комментариях.
Книжная полка: Java
По мотивам «JAVA → Java по-русски. Часть первая: Книги» habrahabr.ru/blogs/java/66568
Добрый день, уважаемые хабровчане!
В предыдущем обзоре Java книг, проведенном пользователем Scala, было рассказано о «практических» книгах, вышедших на рынок в последние три года. Я же хочу рассказать об этих и других книгах с несколько иного ракурса: попытаться выделить ценность информации книг.
Я не любитель читать с монитора, и предпочитаю книги покупать в бумажном варианте. Чтобы сделать осознанный выбор, следует отдавать себе отчет в том, что книга несет некие фундаментальные знания, но никак не сборник «последние фишки». Также в данной статье я хочу упомянуть о других известнейших трудах, не касающихся Java напрямую. Посмотрим, что лучше всего выбрать для обучения языку?
Итак, Java. Замечательный, на мой взгляд, язык программирования. Простой для изучения, имеющий широкие возможности и множество других полезных вещей. И начать изучение стоит с известной книги
К.Хорстманн – Java2: основы
Очень хорошая книга, показывающая основные возможности языка и самой платформы. Содержит описание основного API. На мой взгляд, она обязательна для приобретения, и не стоит даже заглядываться на толстый справочник Г.Шилдта.
«Выучив язык», надо уметь его правильно применять. В этом нам поможет
Г.Буч с его книгой «Объектно-ориентированный анализ и проектирование с примерами приложений»
>прим: книга не относится напрямую к Java, поэтому отдельно ее не выделяю.
Само понимание объектно-ориентированного подхода дает превосходную почву для понимания паттернов проектирования. И в этом нам поможет
«Применение шаблонов Java» — С.Стелинг, О.Массен, 2001
«Почему паттерны, мы же и без них отлично кодим?» — довольно частый вопрос людей, «программирующих» на любом из ООП языков. Хочу эту ситуацию несколько прояснить: современное программирование уже не ремесло, а скорее фабрика, и важен не только результат, а скорость разработки, расширяемость и прочее. Это все не достижимо без грамотного проектирования. Во-вторых, чтение подобной литературы даст понимание самой организации Java, так как практически все в этом языке строится на паттернах.
Теперь можно браться за более крупные проекты, чем наши первые, получать новые знания. И поможет нам второй том книги
К.Хорстманн – Java2: тонкости программирования
Замечательная книга, показывающая неочевидные «штучки» очевидного процесса. Без опыта – не суйтесь в дебри.
Не могу не упомянуть мою любимую книгу от
Стива Макконнелла – Совершенный код
Раз уж вы связались с программированием, извольте читать ее от корки до корки каждый год-два.
Итак, мы уже поняли, что такое Java, и десктопные приложения нас больше не вдохновляют как раньше, потому мы решили писать серверные приложения.
Переходим к J2EE. Сразу отмечу, что для меня спецификация J2EE это не только сервлеты, jsp, jsf и пара Фреймворков. Для более глубоких знаний требуется совершенно другая литература, которую я не обнаружил среди русскоязычной (могу лишь посоветовать книги в оригинале, такие как «EJB 3 in Action» и «EJB Design Patterns: Advanced Patterns, Processes, and Idioms»).
Как уже упоминалось в статье хабропользователя Scala, книг по J2EE очень мало, и рассказать можно лишь о трех:
Буди Курняван — «Программирование web-приложений на языке Java»
Замечательная книга для новичка. В ней неплохо расписаны азы создания j2EE приложений на основе сервлетов и JSP. Мастера скажут, что это уже не актуально, и даже про EJB ничего не сказано. Но эта книга рассчитана на людей, только начавших знакомство с J2EE и работу серверных приложений слабо представляющих. Предоставляет базовые навыки разработки для Интернет. Так что свою миссию данное издание выполняет на все сто. Изучение фреймворков и других технологий – это уже отдельная история. Отдельно стоит сказать об отвратительном качестве печати: рисунки нечитабельны.
К.Хорстманн – «JavaServer faces»
Отличная книга по каркасу JSF из разряда must_have. Показывает все плюсы разработки на JSF в отношении удобства и скорости разработки, принцип построения приложения на «бобах» (beans), и многие другие преимущества этой технологии.
«Образцы J2EE. Лучшие решения и стратегии проектирования»
Дипак Алур, Джон Крупи и Дэн Малкс написали прекрасную книгу о паттернах для J2EE. Обязательна для чтения всем, кто сколько ни будь серьезно интересуется web-программированием на основе J2EE.
Почему я упустил из виду «сборник рецептов»? Да, она полезна, но эта не та книга, которую стоит покупать в бумажном варианте.
J2ME
Здесь дела обстоят совсем плохо. Все что мне доводилось читать сводилось к банальному тутореалу «напиши игру пока читаешь». Крайне бестолковая литература.
Вывод:
Все хотят быть на гребне волны в технологиях. Вот только технологии эти, к сожалению, рождаются на западе. Авторы пишут книги, их переводят… Тратится драгоценное время, и к выходу книги добрая половина тем уже не так актуальна. Но, тем не менее, чтение технической литературы (в т.ч. в оригинале) очень полезно в плане создания у себя в голове фундамента, на котором гораздо проще будет выстроить понимание современных технологий, нежели без них. Ведь работа программиста – это не просто набирать код, это тяжелый труд, требующий творческого подхода.
Что еще можно добавить? Для пущего эффекта — читаем оригиналы, документацию и форумы. Новичкам — в первую очередь — книги.
P.S.
Существуют книги – рассуждения, такие как «Гибкая разработка приложений на Java с использованием Spring, Hibernate и Eclipse». По сути, в них нет ни спринга ни хибернейта. Просто рассуждения на тему как нужно программировать. Описание подобных изданий я приводить не стану, пусть каждый себе выбирает сам, что ему читать перед сном.
UPD: Описание книги «Архитектура корпоративных приложений» М. Фаулера от пользователя sse
Мое мнение по поводу книги.
Первое, что отличает книгу — авторский стиль изложения. Все предельно ясно, и напоминает конспект, выполненный радивым студентом — записаны основные положения, выделены моменты, есть необходимые иллюстрации. Книга затрагивает широкий список вопросов: разделение приложения на слои, организация бизнес-логики, возможные сценарии работы с базой данных, организация UI в веб приложении (в книге не рассматривается UI для десктопных приложений, но впоследствии автор добавил эту информацию на свой сайт). Что немаловажно, приведены примеры на Java, что есть lingua franca для современного разработчика.
Всякий раз, когда в голове начинает крутиться мысль «а вот эту таблицу обернуть в класс, и тут унаследоваться — ура, я придумал новый способ», стоит взять книгу Фаулера и прочесть — вероятно, что там это задокументировано, изложено, описан усовершенствованный способ и приведены подводные камни и способы их обхода.
Книга разделена на две части, и этим очень напоминает структуру книги «Design Patterns» by GoF. Первая часть содержит общие положения о построении системы, а так же примеры применения знания из этой книги в реальных приложениях. Вторая часть является каталогом-справочником паттернов, сгруппированных по слоям приложения, в которых типично встретить каждый из них.
В завершение приведен ряд элементарных паттернов как наиболее общих и универсальных из области обработки и хранения данных, построения своих бизнес-объектов и советы по интерфейсной части.
Книга не из дешевых, но информация, приведенная в ней, себя окупает. На сайте Фаулера martinfowler.com она доступна в электронном варианте: можно «невозбранно» (с) ознакомиться, чтобы решить, нужна она вам, или нет. Я сразу понял, что нужна 🙂
UPD2: Описание от пользователя culvert изданий на английском языке
Список лучших, по моему мнению, когда либо написанных книг про Java. Книги расположены в порядке их важности (первыми указаны наиболее фундаментальные).
0. Java Language Specification 3rd Edition by James Gosling et al это самая главная книга, книга номер «ноль» этого списка, известная также как JLS. В третьей редакции описывается 5-ая версия языка. Я считаю, что каждый Java программист должен прочитать JLS хотя бы раз. Необходимо знать все возможности предоставленные языком для того чтобы использовать их самому и для того чтобы понимать код написанный другими. JLS это аналог JavaDoc или другой документации для используемых вами библиотек. Однако, в отличие от библиотечных классов, для которых документация обычно доступна из вашей среды программирования, по языку контекстная документация в средах программирования не предоставляется, поэтому JLS нужно читать практически «от корки до корки» хотябы на уровне оглавления и общего содержания каждого пункта. JLS является обязательной литературой при подготовке к сдаче экзамена на Sun Certified Java Programmer (SCJP).
1. Effective Java 2nd Edition by Joshua Bloch рассказывает как именно надо использовать язык Java, чтобы писать хорошие и понятные другим программы. Это сборник практических советов и шаблонов которые должны быть в репертуаре каждого Java программиста. Во второй редакции своего бестселлера Блох рассказывает об эффективном использовании всех возможностей 5-ой версии Java. Даже программист с многолетним опытом откроет в ней что-то новое и уж точно получит удовольствие от систематизации всех основных знаний про программирование на Java.
2. Java Concurrency in Practice by Brian Goetz et al(Must read если хотите писать хороший многопоточный код) необходима всем, кто пишет многопоточные приложения на Java. Её не нужно читать если вы пишете простые приложения а для бизнес-логики используете J2EE или другие каркасы приложений которые изолируют программиста от многопоточности. Однако, как только вам необходимо оптимизировать производительность или скорость реакции вашего приложения, то в современном мире от многопоточности вам не уйти. В этом случае книга Гоэтза будет вашим лучшим помощником.
3. Java Puzzlers: Traps, Pitfalls, and Corner Cases by Joshua Bloch, Neal Gafter это интересная книга которая состоит из интеллектуальных загадок исключительно на языке Java. Она раскроет перед вами все граничные случаи языка Java, научит как не надо программировать, чтобы ваш код был понятен. Книжка не обязательна для прочтения, но очень рекомендуется для подготовки к SCJP и для собственного удовольствия.
ТОП-10 лучших книг по Java для программистов
Не имеет значения, хотите вы улучшить скилл или только собираетесь начать изучение, здесь вы найдете лучшие книги по Java для программистов.
На нашем сайте вы найдете уйму книг, в том числе лучших по вашему мнению. Здесь же собраны книги, посвященные языку программирования Java. Так чего же мы ждем? Поехали!
Освеженная подборка книг по Java для программистов
Эффективная Java – Джошуа Блох
Ничего удивительного, что эффективная Java от Джошуа Блоха – это лучшая книга. Это определенно обязательная к прочтению книга по Java для программистов любого уровня. Вы получите массу информации по ЯП и его API, т. к. автор является создателем нескольких ключевых классов, таких как java.lang и Java Collection framework.
Clean Code: A Handbook of Agile Software Craftsmanship – Robert C. Martin
Еще одна вечная Java-классика. Как следует из названия, вы научитесь писать правильный код, что само по себе является трудной задачей.
Выучить Java легко, а вот написать хороший код, использующий ООП-принципы, – непросто. Именно для этого предназначена данная книга.
Роберт К. Мартин делится большим опытом разработчика ПО, обучая вас различным методам программирования и практикам, которые будут полезны в повседневной работе программиста.
Java. Библиотека профессионала – Кей С. Хорстманн
Самый популярный русский двухтомник по Java. Десятое издание обновили с учетом Java 8. В первом томе труда рассматриваются основные понятия и принципы современного подхода к программированию. В данной книге очень подробно на понятных примерах рассматривается базовый синтаксис, безопасность, методики ООП и параллельного программирования, Swing и многое другое. Книга подойдет как для практикующего специалиста, так и для новичка, решившего изучить этот ЯП.
Head First. Паттерны проектирования – Эрик Фримен, Элизабет Робсон
В этом выпуске Head First Design Patterns, обновленном под Java 8, представлены проверенные на практике шаблоны, используемые разработчиками для создания функционального, элегантного, многоразового и гибкого ПО. По окончании обучения вы сможете воспользоваться лучшими практиками проектирования и опытом тех, кто боролся с кодом и одержал победу. Все, что вам может понадобиться в процессе работы над проектом можно найти в этой книге.
Spring в действии – Крейг Уоллс
Фреймворк Spring – это тот продукт, без которого не обойтись программисту на Java. В данной книге описана работа со Spring 3: интересные особенности выражений языка SpEL, новые функциональные решения, связанные с контейнером IoC, а также REST. Автор снабдил каждую главу интересными и понятными примерами. Издание предназначено как для начинающих специалистов, так и для более опытных программистов.
Test Driven: TDD and Acceptance TDD for Java Developers – Lasse Koskela
Тестирование является важным навыком. Все разработчики начинают с модульных тестов на JUnit, но знание этой библиотеки не сделает из вас профессионального программиста.
При разработке через приемочные тесты сначала пишется исполняемый тест того, что должен делать код приложения, а только после этого можно писать сам код. Это требует больших знаний и в этом поможет данная книга. Рекомендуем к прочтению.
Изучаем Java – Кэти Сиерра, Берт Бейтс
Данный мировой бестселлер отличается от других похожих книг своей уникальной подачей информации. Она излагается не в строгой, а в понятной и свободной форме с визуальным подкреплением полученной информации. Вы рассмотрите такие темы, как: основы синтаксиса, ООП, сеть, многопоточность, распределенное программирование, тестирование и многое другое.
Алгоритмы на Java – Роберт Седжвик, Кевин Уэйн
Книга этих двух авторов зарекомендовала себя лучшей по алгоритмизации. В издании рассматривается огромное количество материала, среди которого структуры данных, алгоритмы сортировки Java, алгоритмы поиска, обработки графов и строк, а также популярные алгоритмы, которые будет очень полезно знать любому программисту.
Издание пестрит понятными иллюстрациями, лаконичной описательной частью, хорошо подобранными кусками кода и упражнениями для каждой части и главы.
Head First Object-Oriented Analysis and Design – Brett D. McLaughlin
Объектно-ориентированный анализ и дизайн научат вас анализировать, проектировать и писать серьезный ОО софт, который легко использовать, поддерживать, расширять и добавлять в него новые функции, не “ломая” существующие. Вы узнаете как:
Java. Полное руководство – Герберт Шилдт
В данной книге, подготовленной к работе с Java 9, вы найдете, как правильно разрабатывать, компилировать, отлаживать и выполнять код на Java. Книга также охватывает некоторые из более продвинутых функций Java, включая многопоточное программирование, универсальные шаблоны, лямбда-выражения, Swing и JavaFX. Это практическое руководство Oracle Press содержит подробную информацию о системе модулей Java SE 9 и, в качестве дополнительного бонуса, включает в себя введение в JShell.
Книги по разработке web приложений на java
Эффективный Java. Тюнинг кода на Java 8, 11 и дальше (2021) PDF, EPUB
Скачать книгу можно в нашем телеграм канале: https://t.me/javalib/917
Программирование и тестирование обычно принято относить к разным профессиональным сферам. Скотт Оукс — признанный эксперт по языку Java — уверен, что если вы хотите работать с этим языком, то обязаны понимать, как выполняется код в виртуальной машине Java, и знать, какие настройки влияют на производительность.
Вы сможете разобраться в производительности приложений Java в контексте как JVM, так и платформы Java, освоите средства, функции и процессы, которые могут повысить производительность в LTS-версиях Java, и познакомитесь с новыми возможностями (такими как предварительная компиляция и экспериментальные уборщики мусора).
В этой книге вы:
— Узнаете, как платформы и компиляторы Java влияют на производительность.
— Разберетесь c механизмом уборки мусора.
— Освоите четыре принципа получения наилучших результатов при тестировании производительности.
— Научитесь пользоваться JDK и другими инструментами оценки производительности.
— Узнаете как настройка и приемы программирования позволяют минимизировать последствия уборки мусора.
— Научитесь решать проблемы производительности средствами Java API.
— Поймете, как улучшить производительность приложений баз данных Java.
Классические задачи Computer Science на языке Java (2021) PDF, EPUB
Скачать книгу можно в нашем телеграм канале: https://t.me/javalib/959
Cтолкнулись с «неразрешимой» проблемой при разработке программного обеспечения? Скорее всего, кто-то уже справился с этой задачей, и вы можете не ломать голову. Дэвид Копец собрал наиболее полезные готовые решения, принципы и алгоритмы. «Классические задачи Computer Science на языке Java» — это мастер-класс по программированию, содержащий 55 практических примеров, затрагивающих самые актуальные темы: базовые алгоритмы, ограничения, искусственный интеллект и многое другое.
В этой книге:
— Рекурсия, мемоизация и битовые манипуляции.
— Поисковые, графовые и генетические алгоритмы.
— Проблемы ограничений.
— Кластеризация методом k-среднего, нейронные сети и состязательный поиск.
Java. Библиотека профессионала. Том 2. Расширенные средства программирования (2019) PDF
Скачать книгу можно в нашем телеграм канале: https://t.me/javalib/717
Объектно-ориентированное программирование на Java. Платформа Java SE (2020) PDF
Скачать книгу можно в нашем телеграм канале: https://t.me/javalib/972
Эта книга предназначена для тех, кто хочет научиться программировать на языке Java.С этой книгой вы обучитесь объектно-ориентированному программированию на платформе Java SE и научитесь применять принципы ООП на практике. Эта книга охватывает важные аспекты программирования на языке Java, начиная с основ и заканчивая объектно-ориентированным подходом и командной разработкой кода.
Git. Практическое руководство. Управление и контроль версий в разработке программного обеспечения (2021) PDF
Скачать книгу можно в нашем телеграм канале: https://t.me/javalib/1015