Лучшие книги по Java

Spring Boot with React and AWS: Learn to Deploy a Full Stack Spring Boot React Application to AWS
Spring Boot with React and AWS: Learn to Deploy a Full Stack Spring Boot React Application to AWS описывает Amazon Web Services (AWS), некоторые его ключевые сервисы, такие как EC2, Elastic Beanstalk, Amazon RDS и Amazon Route 53, демонстрирует как создать учетную запись AWS, сервер, приложение HelloWorld JSP, WAR-файл с помощью Maven и загрузить файл в Elastic Beanstalk. Далее вы научитесь развертывать Spring Boot REST API в AWS с помощью Elastic Beanstalk, что даст вам возможность создать и развернуть приложение Spring Boot, ознакомитесь с Amazon RDS, операциями CRUD в приложении Spring Boot и узнаете как развернуть приложение Spring Boot, которое работает с MySQL в AWS. Напоследок ознакомьтесь с основными компонентами для разработки одностраничного приложения с использованием React в качестве интерфейса для использования API, предоставленного серверной программой, настроите среду для разработки программы React и поработаете с S3 в AWS, где и развернете программу React.
Данная книга подойдет программистам с опытом разработки в Java, Spring Boot и React, желающим научиться развертывать полный стек приложения Spring Boot React на AWS с помощью сервисов AWS Elastic Beanstalk и S3.
Об авторах
Рави Кант Сони (Ravi Kant Soni) – ведущий фул стек инженер с более чем 11-летним опытом в области IT, AWS Certified Solutions Architect. Рави имеет опыт в разработке программного обеспечения, проектировании ПО, архитектуре систем, программировании приложений и автоматизации тестирования. Имеет степень бакалавра по информационным наукам и инженерии из Reva University, Бангалор, и учился в Bal Vikash Vidyalaya, Сасарам и Бихари (Индия). Также он является уважаемым членом Совета исследований в школе вычислительной техники и информационных технологий REVA University в Бангалоре.
Намрати Сони (Namrata Soni) – разработчик веб-приложений-самоучка, увлекающийся красивыми и интерактивными пользовательскими интерфейсами (UI). Имеет степень в области компьютерных наук из Sagar Institute of Science & Technology, Бхопал; и училась в школе Bal Vikash Vidyalaya, Сасарам и Бихари (Индия). Она любит чистый и хорошо протестированный код, большой поклонник открытого кода и наслаждается изучением чего-то нового. Сейчас работает с React и Node.js для создания современных приложений JavaScript.

Java Concurrency на практике
Java Concurrency in Practice – практическое руководство по написанию надежных и эффективных многопоточных приложений с использованием языка программирования Java. Авторы собрали лучшие практики, известные ловушки и передовые методы управления потоками и синхронизации в многопоточных программах.
Книга охватывает широкий спектр тем, включая базовые концепции параллелизма и безопасности потоков, методы построения и составления многопоточных классов, использование блоков параллелизма в java.util.concurrent, оптимизацию производительности: что можно делать, а что не стоит и пытаться, тестирование параллельных программ, атомарные переменные, неблокирующие алгоритмы и модель памяти Java.
Разработка, тестирование и настройка многопоточных программ до сих пор может быть очень сложной, поскольку они, вроде бы работают, но часто терпят сбои при высокой нагрузке в реальной среде. Авторы использовали свой немалый опыт, чтобы дать понятные объяснения, реальные примеры и практические упражнения, помогающие разработчикам разобраться в тонкостях параллельного программирования и научиться создавать надежные и масштабируемые многопоточные приложения, а так же знакомят с правилами проектирования, паттернами и моделями, которые не зависят от версии Java и на протяжении многих лет остаются актуальными и эффективными.
Об авторах
Брайан Гетц (Brian Goetz) – профессиональный разработчик с более чем 20-летним стажем. Он является основным автором вышеупомянутой книги Java Concurrency In Practice, а также более 75 статей, посвященных разработке программного обеспечения. Более десяти лет Брайан работает архитектором языка Java в Oracle.
Тим Пайерлз (Tim Peierls) – имеет разнообразный опыт работы в таких областях, как BoxPop.biz, записи звука и театр. Он также является основным членом экспертной группы Java Community Process JSR 166 и участвовал в многочисленных других экспертных группах JCP.
Джошуа Блох (Joshua Bloch) – программный инженер. Был главным архитектором Java в Google, выдающимся инженером Sun Microsystems и старшим системным дизайнером в Transarc. Он руководил разработкой и внедрением многочисленных функций платформы Java, включая усовершенствование языка JDK 5.0 и Java Collections Framework.
Дэвид Холмс (David Holmes) – директор компании DLTeCH Pty Ltd, расположенной в Брисбене, Австралия. Он специализируется на синхронизации и совместной работе и является участником экспертной группы JSR-166, разрабатывавшей новые средства совместной работы. Он также является соавтором обновления спецификации Real-Time для Java и в последние годы работает над реализацией этой спецификации.
Джозеф Боубир (Joseph Bowbeer) – архитектор программного обеспечения в компании Vizrea Corporation, где он специализируется на разработке мобильных приложений для платформы Java ME. Однако его увлечение параллельным программированием началось еще на его работе в Apollo Computer. Он участвовал в экспертной группе JCP для JSR-166.
Даг Ли (Doug Lea) – автор книг, статей и спецификаций, связанных со стандартизацией ООП в сфере программирования и различных техник раздельного, параллельного программирования. Даг Ли является автором нескольких широко выкручиваемых пакетов программирования и компонентов, а также пакета ''java.base.util.concurrent''' для параллельного программирования в Java.

Java Эффективное программирование
Эта книга помогает эффективно использовать язык программирования Java и его основные библиотеки: java.lang, java.util и java.io. Автор исследует новые шаблоны проектирования и языковые идиомы, возникшие вследствие значительного расширения возможностей и функционала Java, включая лямбда-выражения, функциональные интерфейсы, потоки, дженерики и коллекции, новые возможности библиотеки, такие как интерфейс Optional, java.time и удобные фабричные методы для коллекции, а также выбранные функции Java 9.
Книга состоит из 11 разделов, которые могут изучаться отдельно друг от друга и в которых излагаются полезные практики, даются конкретные советы, рассматриваются важные нюансы платформы Java и приводятся обновленные примеры кода. Исчерпывающие описания и объяснения для каждого пункта позволяют понять, что делать, чего не делать и почему.
Об авторе
Джошуа Блох (Joshua Bloch) – профессор Университета Карнеги-Меллона. Ранее он был главным архитектором Java в Google, выдающимся инженером Sun Microsystems и старшим системным дизайнером Transarc. Он руководил разработкой и внедрением многочисленных функций платформы Java, включая усовершенствование языка JDK 5.0 и Java Collections Framework. Имеет степень доктора философии по информатике в Университете Карнеги-Меллона и степень бакалавра наук в информатике из Колумбийского университета.

Head First. Патерни проєктування
«Паттерны проектирования» — ваша книга, если вам когда-либо приходилось сталкиваться с проблемами дизайна программного обеспечения. Вам не придется «изобретать колесо» — просто воспользуйтесь сводным вместе огромным опытом разработчиков и возможностью использовать лучшие практики.
Вы узнаете, зачем нужны паттерны, увидите, как они выглядят и работают в «дикой природе», а привыкнув к их использованию, сможете потратить свободное время на что-то более сложное и интересное. Авторы прекрасно показали, как паттерны используются в Java API и как применить встроенную поддержку паттернов Java в вашем собственном коде. Заодно вы усвоите реальные принципы ОО-программирования, которые останутся с вами и тогда, когда придется работать без паттернов.
Визуально насыщенный формат книги разработан с использованием новейших исследований в области нейробиологии, когнитивной науки и теории обучения. Поэтому весь ее материал мгновенно запоминается, и скоро вы сможете с легкостью общаться с другими членами вашей команды на «тайном языке» паттернов проектирования.
Читайте нас в Telegram, чтобы не пропустить обзор интересных книг.