Передмова
Отже, ви відчуваєте, що настав час змінити сферу діяльності та освоїти нову професію. Чому б не спробувати програмування? За це добре платять, це перспективно та цікаво. Тільки відразу виникає питання: що робити, куди бігти, як почати програмувати? Як людина, що пройшла цей шлях з нуля, можу вас запевнити, що при правильному підході до навчання, терпіння і наполегливості ви зможете незабаром стати програмістом і знайти роботу, що добре оплачується. У цій статті я хочу поділитися порадами, як розпочати програмування.Ставимо мету
Щоб зрозуміти, чого прагнути і якого рівня досягти, дайте відповідь на просте запитання – навіщо вам програмування? Якщо ваша мета – стати професіоналом і заробляти програмуванням на життя, налаштовуйтесь на серйозну та інтенсивну підготовку. При цьому ви повинні бути готові щодня приділяти час вивченню програмування. Якщо ваша мета - хобі або розширення кругозору, можна вибрати темп повільніше при наявності вільного часу та бажання. Але в жодному разі не варто розтягувати навчання «на роки». По-перше, знання йдуть швидше, ніж накопичуються, по-друге, технології програмування дуже швидко розвиваються. Поки ви вивчаєте інструмент розробки або фреймворк, він може застаріти і виявитися непотрібним до моменту працевлаштування. Найкраще рішення, як на мене, накидати приблизний план навчання.Вибираємо мову
Якщо у вас є конкретне уявлення, чим ви хотіли б займатися в програмуванні, то це значно спрощує вибір мови. Кожна мова має свою спеціалізацію та спрямованість. Конкретну інформацію про це можна знайти на просторах інтернету.Оновлено 29.11.2021
Пишемо план підготовки
Саме з плану я радив би починати шлях програміста. Розбийте своє навчання на етапи та відведіть на кожен етап певний час. Щоб краще зрозуміти, як програмувати, а точніше, що відбувається по суті, коли процесор виконує ваш перший Hello, Word! вам знадобляться загальні знання архітектури комп'ютера. Якщо у вас у цій галузі прогалини, бажано їх усунути. Тому рекомендую включити архітектуру ПК у ваш навчальний план. Вивчення вибраної мови розбивайте на етапи зі збільшенням складності матеріалу. Зразкове уявлення про необхідні знання можна дізнатися, вивчивши питання до співбесіди або вимоги до претендентів на посади в IT-компаніях. Як навчитися програмувати, якщо раніше не займалися цим? Відповідь проста: щоб вивчити іноземну мову, спочатку вивчають прості слова, потім правила, що дозволяють їх пов'язувати, далі ви вчитеся розуміти та розмовляти. Щоб вивчити Java, спробуйте дотримуватися такого ж алгоритму.Як вивчити Java?
Спочатку вивчіть синтаксис мови: ключові слова, оператори, правила написання коду. Поступово переходьте до вивчення складніших конструкцій мови – методів, конструкторів, класів, бібліотек та фреймворків. Щоб зрозуміти, як програмувати правильно, увімкніть у програму навчання алгоритми та структури даних. Це дуже корисно для формування програмного мислення. Цей етап бажано проходити після вивчення синтаксису мови.
Як навчитися програмувати на Java?
Щоб почати програмувати на Java , вивчіть такі базові розділи як ООП, винятки, багатопоточність, колекції. Все це входить у Java SE, стандартний набір інструментів розробника, і обов'язково має бути у вашому плані навчання. Після освоєння Java SE можете переходити до Java EE, до технологій клієнт-серверного програмування, баз даних, технологій веб-програмування. Тут ви зіткнетеся просто з колосальним обсягом усіляких фреймворків та інструментів.
Не обов'язково все вивчати відразу, але основні на момент працевлаштування бажано освоїти. Я б до основних відніс наступні: Git, Maven, Spring, ORM (Hibernate, JPA), REST, SQL, JUnit, Tomcat, JavaScript, JSP/JSTL, HTML/CSS, XML, знання якоїсь БД (MySql, PostgreSql) . Мій план виглядав приблизно так: Січень- Пройти перші 10 рівнів JavaRush
- Інструменти розробки IDE, Eclipse, NetBeans
- JRE, JDK, JVM, компіляція, виконання програми
- Синтаксис Java
- « Філософія Java », Брюс Еккель, глави 1-5
- Яків Файн «Вступ до програмування мовою Java» урок 1
- Пройти 11-13 рівень JavaRush
- ООП
- "Філософія Java", Брюс Еккель, розділи 6-10
- Яків Файн «Вступ до програмування мовою Java» уроки 2, 4
- Пройти 14-17 рівень JavaRush
- Основи багатопоточності
- Алгоритми на Java, Роберт Седжвік, Кевін Уейн, розділи 1-3
- «Філософія Java», Брюс Еккель, розділ 21
- Яків Файн «Вступ до програмування мовою Java» урок 11
- Пройти 18-20 рівень JavaRush
- Основи XML
- Input/Output
- «Філософія Java», Брюс Еккель, розділ 18
- Яків Файн «Вступ до програмування мовою Java» урок 9
- Пройти 21-23 рівень JavaRush
- Рядки
- Регулярні вирази
- Основи HTML
- "Філософія Java", Брюс Еккель, розділи 13-16
- Яків Файн «Вступ до програмування мовою Java» урок 3
- Пройти 24-26 рівень JavaRush
- Багатопоточність
- Винятки
- Внутрішні класи
- "Філософія Java", Брюс Еккель, глави 10, 12
- Яків Файн «Вступ до програмування мовою Java» урок 6-7
- Пройти 27-28 рівень JavaRush
- java.util.concurrent
- Основи SQL та БД
- JDBC
- Анотації
- Рефлексія
- «Філософія Java», Брюс Еккель, розділ 20
- Яків Файн «Вступ до програмування мовою Java» уроки 12,13
- Пройти 28-30 рівень JavaRush
- Swing
- Серіалізація
- Парсинг XML
- Сервлети
- JSP/JSTL
- «Філософія Java», Брюс Еккель, розділ 22
- Яків Файн «Вступ до програмування мовою Java» уроки 14-15
- Пройти 31-33 рівень JavaRush
- JSON
- URL. Робота з мережею
- Основи CSS
- Яків Файн «Вступ до програмування мовою Java» урок 10
- Пройти 34-36 рівень JavaRush
- Логування
- JUnit
- Git
- Maven
- List
- Queue
- Робота з колекціями
- Пройти 37-38 рівень JavaRush
- Map
- Патерни проектування
- «Філософія Java», Брюс Еккель, розділ 11
- Яків Файн «Вступ до програмування мовою Java» урок 8
- Пройти 39-40 рівень JavaRush
- Rest
- Tomcat
- Складання та розгортання додатків
- Яків Файн «Вступ до програмування мовою Java» урок 16-18