Розробка на Java — з чого почати знайомство з мовою
Java — одна з найпопулярніших мов програмування серед українських розробників і найпоширеніша серед Back-end розробників. Вона добре підходить початківцям завдяки великій спільноті, затребуваності на ринку праці та різноманіттю навчальних ресурсів.
У межах рубрики «Код професії» розповідаємо, як вивчити Java та знайти першу роботу. Для цього ми поспілкувалися з досвідченими розробниками Богданом Чупікою, Олександром Навкою і Андрієм Петриком і зібрали їхні поради в один матеріал.
Що таке Java
Java — це мова програмування загального призначення, створена компанією Sun Microsystems 1995 року. Її використовують для розробки програмного забезпечення, вебсервісів, ігор і застосунків.
Java є однією з найпопулярніших мов програмування у світі завдяки нескладному синтаксису, гнучкості, безпеці, портативності та масштабованості.
Згідно з рейтингом мов програмування DOU, Java — третя за популярністю мова серед українських розробників. 14,3% айтівців писали нею станом на початок 2022 року.
Серед Back-end розробників Java є беззаперечним лідером — її використовують 29,4% розробників у цій сфері.
Наразі медіанна зарплата Java-розробника рівня Middle становить $2800. Зарплата Trainee варіюється у діапазоні $348–609, Junior отримує від $810 до $1340, а спеціалісти рівня Senior $4335–6000.
Тут можна переглянути вакансії у категорії Java. На момент публікації статті відкрито 132 позиції.
Java підходить для початківців, оскільки існує значна кількість навчальних матеріалів, велика спільнота, мова продовжує розвиватись. Крім того, вона не втратить актуальність ще тривалий час, оскільки безліч застосунків не тільки написані на Java, а й підвʼязані під платформу для запуску Java Virtual Machine (JVM) і набір для розробки Java Development Kit (JDK).
Переваги Java:
- популярна на ринку праці;
- має велике ком’юніті;
- розвинена екосистема;
- об’єктноорієнтована і суворо типізована мова, а отже, не складна у вивченні;
- перевірена часом.
Водночас Java має і низку недоліків:
- є популярною лише у бекенд-розробці;
- синтаксис мови є багатослівним і несучасним;
- Java потужна завдяки своїм фреймворкам і бібліотекам, які також потрібно вчити;
- велика кількість проєктів використовує стару версію мови.
З чого почати та які технології вчити
Вчитись потрібно щодня хоча б по
На першому етапі вивчення мови варто ознайомитися з її синтаксисом і відчути, як все працює. Якщо після цього ви вирішите не продовжувати опановувати саме Java, а перейдете на іншу мову, то час буде втрачено не дарма, оскільки у різних мов синтаксично є багато спільного.
Для початку потрібно встановити на комп’ютер ПЗ для розробки та запуску програм, а саме JDK (Java Development Kit) і одну з IDE (Integrated Development Environment).
Перш ніж писати свій перший код, потрібно розібратись, що таке програма на Java, як вона виконується, а також вивчити основні поняття: вихідний код, байт-код, машинний код, компіляція, інтерпретація, платформа.
Розпочніть з таких книг:
- «Філософія Java», Брюс Еккель. Книжку вже багато разів перевидавали, вона вважається класикою. Допоможе зрозуміти, як влаштована Java і в чому її концептуальні відмінності від інших мов.
- «Java. Бібліотека професіонала», Кей Хорстман. Цей підручник з основ програмування на Java дасть вичерпне уявлення про синтаксис мови, методи обʼєктноорієнтованого програмування тощо. Початківцям краще зосередитись на першому томі.
- «Java. Повний посібник», Герберт Шилдт. Книжки цього автора продаються мільйонними накладами. Один із секретів популярності — простий і зрозумілий стиль викладу. Синтаксис, ключові слова, елементи ООП, бібліотеки класів — все це буде зрозуміло навіть початківцю, адже книжка розрахована на широке коло читачів.
- «Head First. Java», Кетті Сьєрра, Берт Бейтс. Це вичерпний навчальний посібник, який допоможе опанувати основи мови, загальну інформацію про роботу з потоками, мережевою взаємодією та розподіленим програмуванням. Також навчить створювати гру Sink The Dot Com і барабанний музичний чат.
Найпопулярніший фреймворк, який обовʼязково має знати джавіст, — це Spring Boot. Крім цього, під час навчання ви зіткнетеся з тим, що потрібно буде розібратися з системами контролю версій (Git), а також інструментами для збірки проєкту (Maven або Gradle). Для майбутнього працевлаштування стане перевагою, якщо ви вмітимете працювати з Docker.
Також під час пошуку роботи в пригоді стануть ґрунтовні знання Java Core, навички роботи з базами даних (SQL, Hibernate) та розуміння того, як працює Web (HTTP, REST, Client Server Architecture).
Радимо під час навчання користуватися цією roadmap.
Всю теорію потрібно паралельно підкріплювати практикою. Є застосунки і сайти із завданнями, що допоможуть крок за кроком освоїти мову. Якщо вам щось не вдається, а поруч немає досвідченого ментора, запитайте поради на різних форумах.
Розвʼязуйте алгоритмічні задачі на Codewars або LeetCode. Також практикуватись у кодингу можна на Edabit.
Наприкінці навчання бажано зробити невеликий пет-проєкт на Spring Boot, щоб продемонструвати свої вміння на майбутній співбесіді.
Чи є потреба в курсах
Андрій Петрик
Усе залежить від того, хто вчить. Жодні курси нічого не гарантують (і це не про їхню якість). Проте якщо все ж обирати курси, то варто спробувати потрапити на ті, які організовують ІТ-компанії (SoftServe, EPAM, Avenga тощо).
Богдан Чупіка
На мою думку, хороші курси дають великий поштовх у навчанні. Зазвичай на курсах уже є структурована інформація, підготовлений матеріал і практичні задачі, що підкріплюються теорією. Круто, коли програма курсу спрямована на те, щоб дати необхідні для працевлаштування знання і «трошки зверху». При цьому я вважаю, що вивчити Java самостійно можливо, але на це піде більше часу. Зокрема, багато сил іде на те, щоб зрозуміти, який навчальний матеріал вартий уваги.
Олександр Навка
Мову можна опанувати повністю самостійно, оскільки матеріалів в інтернеті безліч. Принаймні почати вивчення варто самостійно, оскільки можна легко скласти план навчання і йти по нього в тому темпі, який буде для вас комфортним. Якщо під час цього ви зіткнетеся з проблемами, які ніяк не зможете розвʼязати, можна піти на курси. Але важливо долучатися на курс, вже маючи певний набір питань, тому що найцінніше тут — викладач, який зможе вам допомогти з конкретними проблемами.
Корисні статті на DOU
Путешествие на планету Java. Мой опыт прохождения cертификации Java 11 Developer (перша і друга частини).
Советы для начинающего Java-разработчика. Подготовка к собеседованию (перша, друга та третя частини).
Куди переходити з Java. Розвиток кар’єри Java-розробника.
Статті рубрики «Java дайджест».
Slim Docker image, или Как уменьшить вес Java-приложения.
Готуємося до співбесіди
Про те, як написати хороше резюме, читайте в цих статтях:
- Як оформити резюме, щоб конкурувати з найкращими кандидатами. Поради на реальному прикладі.
- Как помочь работодателю выбрать ваше резюме. Советы тимлида.
- Як Junior-спеціалісту створити перше резюме. Покрокова інструкція з поясненнями.
Також варто перед підготовкою до співбесіди звернути увагу на статтю «Співбесіда з Java. 250+ запитань для Junior, Middle, Senior».
Роботу радимо шукати на DOU та Djinni. На DOU є розділ «Перша робота» з курсами, стажуваннями та вакансіями лише для початківців. Також варто створити профіль в LinkedIn і моніторити цікаві позиції та активно спілкуватися з рекрутерами.
Будьте готовими до відмов і обов’язково запитуйте в інтерв’юєрів, які з навичок варто підтягнути. Але не засмучуйтесь і продовжуйте шукати роботу — віримо, що вам усе вдасться!
17 коментарів
Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.