A-Level Ukraine

Java

24 000 UAH за курс
6 місяців
Для початківців
Java
Цей курс навчить вас програмувати на Java з нуля. Ви розберете основи мови, ООП, роботу з базами даних та веброзробку. Після навчання ви зможете створити власний проект та отримаєте підготовку до співбесід.

Про курс

Програма курсу

Основи програмування та алгоритмів

На цьому курсі починають з базових понять програмування. Студенти розбираються з алгоритмами, змінними, типами даних та умовними операторами. Вчать правильно називати змінні та розуміють різницю між циклами for, while та do-while. Також пояснюють принципи компіляції коду та сфери застосування Java.

Оператори та системи числення

Далі курс охоплює математичні, бінарні та логічні оператори. Студенти вчаться працювати з двійковою системою числення, переводити числа між системами та розуміють булеву алгебру. Додатково знайомляться з тернарним оператором та отримують перші навички роботи з Git.

Масиви та практичне застосування

Тут розглядають одновимірні та багатовимірні масиви, включаючи матриці. Студенти вчаться обходити масиви, розуміють помилку ArrayIndexOutOfBound та освоюють алгоритм бульбашкового сортування. Практичні заняття допомагають закріпити ці знання.

Класи, об'єкти та функції

Цей блок присвячено основам об'єктно-орієнтованого програмування. Студенти розуміють різницю між класами та об'єктами, вчаться створювати функції та правильно їх називати. Також вивчають рекурсію, стек викликів та навчаються використовувати точки зупину для налагодження коду.

Робота з Git та системами контролю версій

Курс детально розглядає Git - від базових понять commit та гілок до складніших операцій push, fetch, merge та pull. Студенти розуміють, що таке pull request та як Git використовується в реальних проектах з code reviews та feature branches.

Тестування та Maven

Тут пояснюють важливість тестування програмного забезпечення. Студенти знайомляться з різними видами тестування, TDD та TLD підходами, а також отримують перші навички роботи з Maven.

Поглиблене ООП

Цей модуль охоплює складніші аспекти об'єктно-орієнтованого програмування. Студенти розуміють різницю між heap та stack, вивчають інтерфейси, статичні поля та методи. Також розглядають доменну модель, наслідування, композицію та роботу конструкторів.

Абстрактні класи та поліморфізм

Далі курс заглиблюється в абстрактні класи, поліморфізм та віртуальні таблиці методів. Студенти вивчають перерахування, методи hashCode та equals, а також різні типи посилань в Java.

Обробка помилок та винятків

Цей блок присвячено різним підходам до обробки помилок. Студенти розуміють різницю між checked та unchecked винятками, вивчають try-catch-finally блоки. Також розглядають NullPointerException, Optional та Null-Object Pattern для безпечної роботи з null значеннями.

Алгоритми та структури даних

Тут студенти знайомляться з теорією складності алгоритмів, нотацією О-велике. Вивчають алгоритми сортування злиттям, лінійний та бінарний пошук. Також розглядають generics, колекції та принципи boxing/unboxing.

Колекції та структури даних

Курс продовжує вивчення колекцій - Queue, Dequeue, HashSet, HashMap. Студенти розуміють принципи FIFO та LIFO, вчаться створювати ітератори. Також вивчають бінарні дерева, графи та алгоритми їх обходу.

Stream API та робота з файлами

Цей модуль охоплює функціональне програмування через Stream API, lambda-вирази та collectors. Також студенти вчаться працювати з файловою системою через IO/NIO, розуміють різницю між синхронним та асинхронним програмуванням.

Анотації, Reflection та бази даних

Тут студенти вивчають анотації та reflection в Java. Потім переходять до основ SQL - реляційна модель, нормальні форми, транзакції ACID. Навчаються підключатися до баз даних з Java-додатків.

ORM та Hibernate

Курс пояснює, що таке ORM та які задачі він вирішує. Студенти знайомляться з Hibernate, entity manager, створенням сутностей та зв'язків між ними. Також отримують базові знання HQL.

NoSQL та операційні системи

Цей блок охоплює NoSQL бази даних, зокрема MongoDB. Студенти розуміють різницю між SQL та NoSQL, працюють з JSON та BSON. Також вивчають основи операційних систем, процеси, потоки та синхронізацію.

Linux та об'єктно-орієнтований дизайн

Тут студенти отримують практичні навички роботи з Linux - файлова система, стандартні потоки, базові команди терміналу. Також вивчають принципи SOLID, Unix philosophy та патерни проектування.

Багатопотоковість та мережі

Цей модуль присвячено багатопотоковому програмуванню. Студенти розуміють Thread та Runnable, race condition, dead lock. Вивчають synchronized, volatile, mutex та semaphore. Також знайомляться з мережевими основами - модель OSI, HTTP, cookies.

Web розробка та Servlets

Курс охоплює створення web-додатків з використанням Servlets. Студенти вчаться створювати проекти в Maven, реалізовувати Servlet, працювати з фільтрами та патерном Chain of Responsibility.

Мікросервіси та Spring

Тут пояснюють різницю між монолітною та мікросервісною архітектурами. Студенти вивчають REST API, принципи IoC та DI в Spring. Також знайомляться з Spring Boot, MVC та Spring Data.

Фінальний проект та патерни проектування

На завершення курсу студенти отримують завдання для фінального проекту. Вони продумують архітектуру, вибирають технології, знайомляться з Agile. Також вивчають патерни Proxy, Facade, Bridge та Adapter перед захистом дипломної роботи.

Дипломна робота та захист

Дипломна робота включає створення веб-додатку або веб-сайту з кількома сторінками. Студенти демонструють отримані знання, працюють з базами даних. Захист складається з демонстрації робочого проекту та теоретичної співбесіди з незалежним експертом.

Додаткові можливості

Курс включає 24 заняття з англійської мови для технічних спеціалістів. Проводять тестові співбесіди з технічними фахівцями та майстер-класи зі складання резюме. Кожен студент отримує консультації з рекрутером та супровід менеджера до моменту працевлаштування.

Що включено

Вечірні заняття
Видається диплом/сертифікат
Можливе працевлаштування
Реальний проект у портфоліо
Супровід ментора