С чего я начинал. Рекомендации для старта
Книги для начинающих Java-разработчиков, которые помогут освоить язык и профессию
Для успешного старта в Java важно не только изучить синтаксис, но и понять основы разработки, архитектуру приложений и современные технологии. Вот учебные материалы и рекомендации, с которых я начинал:
1. Основные книги для изучения Java
- «Философия Java» Брюса Эккеля — глубоко раскрывает синтаксис и парадигмы языка, отлично подходит для освоения основ.
- «Java. Полное руководство» Герберта Шилдта — систематическое и подробное руководство с примерами.
2. Литература по профессии и практическим аспектам
- «Чистый код» Роберта Мартина — ключ к пониманию правильного стиля кодирования и архитектуры.
- «Spring in Action» Крэйга Уоллса — введение в популярный фреймворк Spring, который нужен большинству Java-разработчиков.
- «Head First Design Patterns» Эрика Фримена и Элизабет Робсон — паттерны проектирования, необходимые для создания гибких приложений.
3. С чего начать изучение языка
- Освоить базовый синтаксис: переменные, классы, типы данных, коллекции, стримы. Знать вывод-ввод с консоли и форматирование. Работа с датами, строка и (String, StringBuilder)
- Написать простые программы, закрепить понимание ООП (наследование, полиморфизм, инкапсуляция, абстракция).
- Понять работу с исключениями и выводом-выводом (IO).
4. Ключевые технологии для начинающего Java-разработчика
- IDE (IntelliJ IDEA, Eclipse) — среда разработки, которая упрощает написание кода, ускоряет процесс разработки, а также подсказывает ошибки
- Maven/Gradle — системы сборки и управления зависимостями. Для новичков лучше начать с Maven, его будет достаточно для многих программ. Однако в дальнейшем Gradle будет необходим, поэтому лучше его изучать сразу после Maven
- Git — система контроля версий, такой как gitHub(создайте на платформе свой аккаунт и добавляйте туда свои проекты. Вы можете использовать их как портфолио). Необходимо знать команды Git такие как push, mearge request и так далее.
- Spring Framework — основной фреймворк для создания веб-приложений и микросервисов. Для начала нужно знать spring, а затем начать изучать Spring security и Spring boot одновременно. Вам поможет сайт Spring.io для автоматической сборки проекта. При создании Spring boot проекта необходимо в IntelliJ IDEA при создании указать, что проект будет на spring boot
- SQL и базы данных (например, MySQL, PostgreSQL) — основа хранения данных. Необходимо знание самых простых запросов sql типа select, update, create, delete, join. Для управления миграциями БД используйте liquebase. Он используется в формате yml, и ничего сложного в нем нет, достаточно понимать основы таблиц и все будет ясно. Чтобы с помощью spring работать с таблицами, изучите hibernate (понятие сущность, связи многие ко многим и т.д.)
- Postman - специальное приложение, где вы можете тестировать свои http запросы к rest API используя тело запроса JSON, txt и т.д., параметры запроса и значения из строки запроса, также использовать токена авторизации разных видов защиты. Очень удобный дизайн и много функционала. Тоже самое можно сделать и в IntelliJ, но мне было неудобно.
- Docker - приложение для деплоя сервисов. Удобно для тех, кто не любит использовать командную строку. С его помощью вы можете поместить свои сервис в контейнер и запускать их на разных устройствах, на которых даже другая ОС. В приложении вы видите все свои контейнеры и имейджи, которыми можете легко управлять. В своей IDEA необходимо создать файл Dockerfile и написать инструкцию по сборке имейджа. Если у вас сложный проект с использованием нескольких микросервисов, БД, то в дополнение нужно писать docker-compose. 5. Сайты на которых вам помогут
Spring.io JavaRush Postman Docker
Итог: для уверенного старта изучения Java начинающим разработчикам стоит комбинировать изучение классических книг, уделять внимание практике и познакомиться с современными инструментами разработки. Это позволит не только понять язык, но и успешно применять его в реальных проектах. Я рассказал далеко не все, что нужно знать для разработки на Java, но с этого нужно начать.