Все зрозуміло, сучасно і без води. Для тих хто шукає реально якісні знання
Курси Java
- Java
- WEB Developer / Webmaster
Курс основи Java EE складається 8-ми уроків, дозволяють досвідченим розробникам Java SE (Standart Edition) освоїти всі основні концепції та специфікації програмування під Java EE. Даний курс так само розглядає модульне тестування, поради з проектування додатків, що буде корисним і для досвідчених розробників.
Програма курсу
Введення в Java EE. Сервлети
- Відмінності Java SE і Java EE
- Архітектура і склад Java EE
- HTTP. Принцип роботи
- Специфікація Java EE
- HTML. Основні теги
- CSS. Способи підключення
- Типи веб серверів
- Сервлети. Переваги та недоліки
- Методи HTTP запиту
- Нитка в Серлет
Сесія, Cookie, JSP, JSTL
- Поняття контекст, сесія, запит
- Різниця між атрибутами і параметрами
- Поняття ServletContext і ServletConfig
- Поняття Cookies
- Поняття JSP
- JSP, скрімлети, стандартні теги
- Знайомство з JSTL
Основи Maven. Практика
- Знайомство з Maven
- Структура проєкту Maven
- Установка Maven
- Життєвий цикл Maven
- Недоліки Maven
- Приклад веб проєкту
- Шаблони Command і Singleton
Модульне тестування. JUnit
- Введення в модульне тестування
- Початок роботи з JUnit
- Анотації в JUnit
- Утілітний клас Assert
Введення в Spring. Beans
- Знайомство з Spring
- Поняття IoC
- Поняття AOP
- Поняття Dependency Injection і Service Locator
- Область видимості бінов: шаблони Singleton і Prototype
- Спадкування бінов
- Шаблон Proxy і бібліотека CGLIB
- Типи впроваджень об'єктів в біни
- Використання колекцій в бінах
Spring автозв'язування. АОП
- Повторення Basic Bean Cofiguration
- Поняття Autowiring
- Конфігурація за допомогою анотацій
- Приклад Swing проекту на Spring
- Знайомство з АОП
- Основні визначення АОП
- Типи рад в АОП
- Аналіз швидкості роботи методів за допомогою АОП
- АОП за допомогою анотацій
- Зріз інтерфейсів за допомогою АОП
Spring і бази даних
- Введення в Spring Data
- Переваги Spring & JDBC в порівнянні з чистим JDBC
- Створення структури DAO
- Приклад вибірки
- Приклад вставки
- Приклад транзакцій
- Типи транзакцій. Властивість Propagation
- Рівні ізоляції ізоляції транзакцій. Властивість Isolation
- Аспекти для тразакцій
Введення в Spring MVC
- Знайомство з шаблоном MVC
- Розгляд контролера
- Структура проекту Spring MVC
- Додавання CSS в Spring MVC
- Обробка форми в Spring MVC
Після завершення курсу ви будете вміти:
- Поєднувати в одному додатку такі технології, як Java, HTML, CSS, MySQL
- Проєктувати додатки, використовуючи шаблони Singleton та Command
- Створювати та описувати сервлети, зберігати об'єкти в сесії додатку
- Обробляти форму, використовуючи JSP & JSTL
- Працювати з фреймворком Spring, використовувати спрощений JDBC через Spring
- Програмувати відповідно до парадигм АОП (аспектно-орієнтованого програмування) у Spring
- Працювати з транзакціями в Spring, обробляти форму, використовуючи Spring MVC (архітектурний шаблон Model-View-Controller)
Попередні вимоги
- Добре знання Java SE і MySQL
- Уміння працювати з JDBC
- Знання патернів проєктування в Java, Hibernate, HTML, CSS буде плюсом
Особливості курсу
- Практичні заняття і перевірка ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
- Андрій Бондаренко - Java Developer
- Андрій Фок - Java Developer. Тренер-консультант
- Іван Демидко - Java Developer. Тренер-консультант
- Олександр Корж - Java Developer. Тренер-консультант
- Євген Дайнека - Java Software Developer
- Євген Тихонов - Java Developer
- Юрій Царенко - Java Developer. Тренер-консультант
- Ігор Войтов - Java Developer. Тренер-консультант
- Вадим Кожевніков - Java Developer and Trainer at CyberBionic
- Дмитро Красний - Тренер-консультант напрямку Java Developer
- Java
В курсі Patterns of Design розглядається 23 існуючих шаблони проектування, ухил всього курсу зроблений на практику і реальні приклади. Неправильно застосований шаблон може принести чимало проблем - тому особливість курсу в тому, що студенти розглянуть основні проблеми як новачків, так і фахівців, які виникають в роботі з шаблонами і рішення цих проблем в різних ситуаціях.
Програма курсу
What are Design Patterns? The Strategy, Decorator patterns
- Creational, Behavioral and Structural Paradigms
- Принципи проєктування №1: Покладіться на інтерфейси, нереалізації
- Принципи проєктування №2: Відкритий/закритий принцип
- Принципи проєктування №3: принцип найменших знань
- Принципи проєктування №4,5: Інверсія залежностей і Голлівудський принцип
- The Strategy Design Pattern: Introduction via String Sorting
- The Strategy Pattern and Dependency Injection
- The Decorator Design Pattern in action: Java File APIs
The Factory, Singleton patterns
- Огляд шаблону проєктування Фабрика
- Фабричний шаблон проєктування в дії: драйвери баз даних
- Шаблон проєктування Абстрактна Фабрика: сімейства класів
- Шаблон проєктування Фабрика: відображення
- Шаблон проєктування Одинак: блокування з подвійною перевіркою, синхронне ключове слово, що стягують многопоточного рішення
The Adapter, Facade, Template patterns
- Шаблон проєктування Адаптер: таблиці і діаграми
- Шаблон проєктування Фасад
- Шаблон проєктування Template: введення за допомогою тексту авто-підведення підсумків. Фреймворки
The Iterator Pattern, MVC Paradigm
- Шаблон проєктування Ітератор: тип безпеки в дженериках
- Шаблон проєктування Ітератор: внутрішні та зовнішні ітератори
- Шаблон проєктування Ітератор: підтримка мови для ітераторів в Python і Java
- The Model View Controller Design Pattern in action: A MediaPlayer example
The Observer, Command patterns
- Шаблон проєктування Спостерігач: обробка миші і дерева
- Шаблон проєктування Спостерігач: MVC + спостерігач = UI маги
- Шаблон проєктування Спостерігач: A MediaPlayer приклад
- Шаблон проєктування Команда: лямбда функції
- Шаблон проєктування Команда: потоки
- Шаблон проєктування Команда: скасування і логування
The Composite, Builder, Chain of Responsibility patterns
- Шаблон проєктування Компоновщик: введення через декоратори
- Шаблон проєктування Компоновщик: ієрархія класів
- Шаблон проєктування Компоновщик: Transitions, Swing Containers
- Шаблон проєктування Будівельник: an SQL Query Builder
- Шаблон проектування Chain of Responsibility
The Memento, Visitor, State, Flyweight, Bridge, Mediator, Prototype, Proxy patterns
- Шаблон проєктування Оберігач: серіалізація
- Шаблон проєктування Відвідувач
- Шаблон проєктування Стан: MediaPlayer
- Шаблон проєктування Пристосуванець: багатопотоковість
- Шаблон проєктування Міст
- Шаблон проєктування Посередник
- Шаблон проєктування Прототип
- Шаблон проєктування Заступник
Після завершення курсу ви будете вміти:
- Розбиратися в шаблонах проєктування, розуміти, в яких ситуаціях який патерн слід застосувати
- Застосовувати більше 20-ти популярних патернів: Адаптер, Фабричний метод, Visitor та інші
- Застосовувати архітектурний шаблон MVC
- Працювати з шаблонами, які спрямовані на оптимізацію використання пам’яті
- Покращувати якість коду та зручність його читання
Попередні вимоги
- Знання об'єктно-орієнтованого програмування
- Базове розуміння UML
- Досвід роботи на Java
Особливості курсу
- Практичні заняття і перевірка ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
Олександр Корж - Java Developer. Тренер-консультант
Подати заявку- Java
- WEB Developer / Webmaster
В даному курсі Web-services студенти розглянуть два основні класи веб-служб: REST-compliant і Arbitrary. Під час курсу Ви засвоїте не тільки поточні архітектури веб-служб і технологій, за допомогою яких веб-служби можуть бути реалізовані, але і нові архітектури, включаючи нові Java API і специфікації.
Програма курсу
Software setup, web services, XML
- Інсталяція середовища розробки, конфігурація Tomcat
- Введення в веб-сервіси
- SOA і веб-сервіси
- Що таке XML?
- Що таке XSD?
- Namespaces
- XML-схема руки вгору
- Створення простих типів
- Управління числом елементів
SOAP Web-services concepts, design and implementation
- SOAP огляд веб-сервісів
- SOAP веб-сервіси, переваги та недоліки
- Коли використовувати SOAP веб-сервіси?
- SOAP
- Файл WSDL
- WSDL, зв'язування стилів
- SOAP веб-сервіси, підходи до проєктування
JAX-WS and JAXB, Apache CXF
- JAX-WS
- JAXB введення
- Створення Java класів з XML-схемами
- Marchalling i Unmarshalling
- Apache CXF
- Створення веб-сервіс проєкту CXF з нуля
- CXF структура проєкту Maven веб додатків і компонентів
REST Web Services Concepts. RESTFul design and implementation
- Огляд REST
- Коли використовувати RESTFul веб-сервіси?
- JAX-RS
- Кроки для реалізації REST
- Налаштування підтримки JSON
- REST Sub Resourse Mapping
- REST, обробка помилок
- JAX-RS Client API, JAX-RS Injection
Після завершення курсу ви будете вміти:
- Визначати семантичні обмеження на XML-документи (розробляти свої мови розмітки)
- Виконувати перетворення XML - Java об'єкт та навпаки
- Обирати засоби опису взаємодій та структури сервісів в SOA
- Описувати контракти веб-сервісів
- Створювати SOAP веб-сервіси відповідно до специфікації JAX-WS, а також клієнтів до них
- Створювати RESTful веб-сервіси відповідно до специфікації JAX-RS, а також клієнтів до них
- Виконувати конфігурування контейнерів сервлетів для публікації SOAP та RESTful веб-сервісів
Попередні вимоги
- Впевнені знання Java
- Java EE IDE для веб-розробників
- Контейнер сервлетів Apache Tomcat
Особливості курсу
- Практичні заняття і перевірка ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
- Андрій Бондаренко - Java Developer
- Андрій Фок - Java Developer. Тренер-консультант
- Євген Кондаков - Java Developer. Тренер-консультант
- Іван Демидко - Java Developer. Тренер-консультант
- Євген Дайнека - Java Software Engineer
- Євген Тихонов - Java Developer
- Юрій Царенко - Java Developer. Тренер-консультант
- Ігор Войтов - Java Developer. Тренер-консультант
- Олег Сотніченко - Java Developer. Тренер-консультант
- Вадим Кожевніков - Java Developer and Trainer at CyberBionic
- Дмитро Красний - Тренер-консультант напрямку Java Developer
- Владислав Донець - Middle Java Developer at SoftServe
- Java
- Backend
В ході даного курсу ми розглянемо основні модулі Spring, навчимося налаштовувати фреймворк і використовувати різні типи анотацій. Ми познайомимося з різними способами написання REST додатків, використанням MVC моделей. Ознайомимося з кешуванням, безпекою, а також Spring Boot. За підсумками цього курсу, ми зможемо писати повноцінні REST додатки з БД самостійно.
Програма курсу
Вступ до Spring Framework
- Необхідні знання
- Переваги Spring
- Модулі Spring
- IoC & DI
- Управління залежностями (приклад)
- SOLID
- POJO
- Bean scope (зона видимості для бінів)
- Додаткові бібліотеки
- Приклади коду
Впровадження залежностей та IoC контейнер
- Inversion of Control & Dependency Injection
- IoC контейнер
- Використання контейнеру
- IoC & DI
- Атрибути біну
- Іменування бінів
- Впровадження залежностей
- Ледача ініціалізація
- Етапи створення біну
- Анотації для конфігурації
Spring MVC
- MVC
- Dispatcher servlet
- MVC (докладніше)
- ViewResolver
- HandlerMapping
- WebApplicationContext
- Анотації
Spring Data
- Переваги Spring Data
- Spring Data repository
- Конфігурація Spring Data
- Ключові слова для створення методів
- Анотації
Spring Testing
- Про тестування
- Різновиди тестування
- Тести Unit
- Тести Integration
- Популярні фреймворки для тестування
- Конфігурація та залежності
- Анотації
- Валідація поля
AOP
- Що таке АОП
- Основні визначення
- Як визначаються аспекти
- Конфігурація та залежності
- Анотації
RESTFul webservices
- Що таке REST
- HTTP-методи
- URL
- RESTFul webservices у Spring
- HTTP message converters
- Залежності
- Анотації
Security
- Авторизація та аутентифікація
- Voters, Filters, Chains
- Безпека на рівні методів
- Конфігурація і залежності
- Анотації
Hibernate Crud
- Робота з базами даних за допомогою Hibernate
- Додавання, видалення тощо під час роботи з базами даних
- Залежності
- Анотації
Boot
- Що таке Spring Boot
- Переваги Spring Boot
- Анотації
Після завершення курсу ви будете вміти:
- Створювати BackEnd для web-додатків
- Створювати RESTfull web-сервіси
- Використовувати різні RDBMS у зв'язці зі Spring
- Створювати додатки, покриті автоматичними тестами
Попередні вимоги
- JavaCore (знання синтаксису та структур даних Java)
- Загальне розуміння ООП
- Розуміння реляційних баз даних (MySQL)
Особливості курсу
- Практичні заняття і перевірка ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
- Андрій Бондаренко - Java Developer
- Андрій Фок - Java Developer. Тренер-консультант
- Євген Кондаков - Java Developer. Тренер-консультант
- Іван Демидко - Java Developer. Тренер-консультант
- Олександр Корж - Java Developer. Тренер-консультант
- Євген Дайнека - Java Software Developer
- Євген Тихонов - Java Developer
- Юрій Царенко - Java Developer. Тренер-консультант
- Ігор Войтов - Java Developer. Тренер-консультант
- Олег Сотніченко - Java Developer. Тренер-консультант
- Вадим Кожевніков - Java Developer and Trainer at CyberBionic
- Дмитро Красний - Тренер-консультант напрямку Java Developer
- Владислав Донець - Middle Java Developer at SoftServe
- Java
Курс "Java Professional" орієнтований на комплексне і глибоке вивчення можливостей мови Java. Він буде цікавий тим програмістам, які вже мають досвід роботи з мовою Java і хочуть познайомитися з його додатковими можливостями, а також особливостями ефективного використання мови.
Програма курсу
Iterator & Comparator
На уроці розглядається ієрархія Java Collection Framework - бібліотеки зумовлених колекцій в Java. Розглядаються основні поняття, такі як Ітератор і Компаратор, класи колекцій (Collection) та карти (Map).
Collection Framework
На уроці розглядається застосування основних реалізацій колекцій - Стек, Черга, Множинність, Список, Карта на прикладі примірників класів Stack, Queue, Set, ArrayList, LinkedList, Map.
IO & Strings
На уроці розглядається робота з потоками введення-виведення в Java, робота з файловою системою користувача, читання і запис файлів, валідація та обробка строкових виразів.
Regular expressions & Data API
На уроці розглядається робота з рядками, принципи побудови та використання регулярних виразів, робота з датою (Date API).
Reflection
На уроці розглядається механізм роботи рефлексії, який дозволяє модифікувати програму в процесі її виконання.
Annotations
На уроці розглядається робота з анотаціями, створення своїх анотацій.
Serialization XML & JSON
На уроці розглядаються такі поняття як, серіалізація і маршалінг, механізми передачі об'єктів з однієї програми в іншу. Знайомство з правилами розмітки JSON i XML.
Thread & Runnable. Problems with Threads
На уроці розглядається механізм багатопоточності і правила побудови багатопоточних додатків. Управління потоками, клас Thread і інтерфейс Runnable, планування і пріорітети виконання, поняття deadlock.
Problems with Threads
На уроці розглядаються основні проблеми побудови багатопотокових додатків.
Lambda expressions
На уроці розглядається парадигма функціонального програмування і її реалізація в Java 8. Функції, лямбда-виразу, функціональні інтерфейси.
Після завершення курсу ви будете вміти:
- Працювати з компонентами Java Collection Framework: Стек, Черга, Множани, Список, Карта
- Взаємодіяти з потоками вводу-виводу, файловою системою користувача, обробляти строкові вирази
- Використовувати регулярні вирази, працювати з датою (Date API)
- Працювати з рефлексією, анотаціями
- Використовувати можливості серіалізації/десеріалізації та маршалінгу, а також правила розмітки JSON та XML
- Застосовувати багатопоточність та працювати з потоками
- Розбиратися в концепції функціонального програмування, функціях, лямбда-виразах та функціональних інтерфейсах
Попередні вимоги
- Впевнені знання синтаксису Java
- Впевнені знання ООП
- Впевнені знання дженериків
Особливості курсу
- Практичні заняття і перевірка ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
- Андрій Бондаренко - Java Developer
- Андрій Фок - Java Developer. Тренер-консультант
- Євген Кондаков - Java Developer. Тренер-консультант
- Іван Демидко - Java Developer. Тренер-консультант
- Олександр Корж - Java Developer. Тренер-консультант
- Євген Дайнека - Java Software Engineer
- Євген Тихонов - Java Developer
- Юрій Царенко - Java Developer. Тренер-консультант
- Ігор Войтов - Java Developer. Тренер-консультант
- Олег Сотніченко - Java Developer. Тренер-консультант
- Вадим Кожевніков - Java Developer and Trainer at CyberBionic
- Дмитро Красний - Тренер-консультант напрямку Java Developer
- Владислав Донець - Middle Java Developer at SoftServe
- Java
Навчання програмуванню відбувається, починаючи з вивчення основних понять і принципів об'єктно-орієнтованого програмування, класів, а також особливостей мови JAVA, і закінчуючи розглядом базових понять такої парадигми як Java Generics.
Програма курсу
Введення в ООП. Класи і об'єкти
Розглядається тема класів і створення їх екземплярів. Пояснюється призначення та використання властивостей, принципи роботи з конструкторами. Застосування ключових слів this i null. Інкапсуляція.
Класи і об'єкти
На уроці розглядаються взаємозв'язки між об'єктами і класами, поняття стану і поведінки об'єктів, перевантаження конструкторів. Розглядаються області застосування ключового слова static.
Успадкування і поліморфізм
На уроці розглядаються такі парадигми об'єктно-орієнтованого підходу, як успадкування і поліморфізм, механізми перевизначення методів і ключове слово final.
Абстрактні класи та інтерфейси
На уроці розглядається парадигма абстракції і її використання в Java. Робота з абстрактними класами і інтерфейсами. Приклади зв'язків між класами (композиція, асоціація, агрегація і т.д).
Списки
На уроці розглядається робота з масивами і методи класу Arrays. Як заміна роботи з масивами розглядається робота зі списками з Java Collection Framework на прикладі ArrayList.
Статичні і вкладені класи. Анонімні класи і перелічувані типи
Розглядаються застосування і використання вкладених класів, принципи створення і механізми використання статичних членів. Використання анонімних об'єктів і анонімних класів, використання і сфера застосування перерахувань (Enums).
Обробка виключень
На уроці розглядається механізм обробки виняткових ситуацій виконання програми в Java. Розглядається клас Exception, конструкції try-catch-finaly, try-with-resources. Створення власних класів-винятків.
Class Object
На уроці розглядається ієрархія класів в Java і суперклас Object. Також розглядається перевизначення і використання методів класу Object.
Універсальні шаблони
На уроці розглядається парадигма узагальненого програмування Java Generics. Будуть розглянуті параметризовані типи в Java, коваріантність, контрваріантність і обмеження узагальнень.
Практика
Застосування знань, отриманих у попередніх уроках, на практиці.
Після закінчення курсу ви будете вміти:
- Працювати з класами та об`єктами, використовувати властивості, методи, конструктори
- Застосовувати ключові слова this, null, static, final
- Працювати зі списками з Java Collection Framework
- Створювати статичні, вкладені та абстрактні класи, використовувати інтерфейси
- Обробляти виключення, що виникають в ході роботи програми
- Розуміти та застосовувати основні принципи об`єктно-орієнтованого програмування (ООП): наслідування, інкапсуляція та поліморфізм,
- Працювати із суперкласом Object
- Використовувати Generics (узагальнення, універсальні шаблони)
Попередні вимоги
- Вільно орієнтуватися в матеріалах курсу Java Starter
- Розуміти теорію машинної математики і роботи електронно-обчислювальних систем
- Знати базовий синтаксис Java
Особливості курсу
- Практичні заняття і перевірка ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
- Андрій Бондаренко - Java Developer
- Андрій Фок - Java Developer. Тренер-консультант
- Євген Кондаков - Java Developer. Тренер-консультант
- Іван Демидко - Java Developer. Тренер-консультант
- Олександр Корж - Java Developer. Тренер-консультант
- Євген Дайнека - Java Software Engineer
- Євген Тихонов - Java Developer
- Юрій Царенко - Java Developer. Тренер-консультант
- Ігор Войтов - Java Developer. Тренер-консультант
- Олег Сотніченко - Java Developer. Тренер-консультант
- Вадим Кожевніков - Java Developer and Trainer at SyberBionic
- Дмитро Красний - Тренер-консультант напрямку Java Developer
- Владислав Донець - Middle Java Developer at SoftServe
- Java
Курс присвячений вивченню технології JPA і її використання на прикладі реалізації Hibernate. Студентам буде показано як використовувати технологію JPA для зберігання даних Java-об'єктів в реляційній БД, а також слухачі дізнаються основні аспекти використання Hibernate в якості JPA runtime (налаштування, оптимізація).
Програма курсу
Введення у JDBC
- Object persistence
- Реляційна база даних
- Об'єктна модель і реляційна модель
- Опір невідповідності реляційного об'єкта
- Відображення реляційного об'єкта
Початок роботи з Hibernate i JPA анотації
- Що таке Hibernate, короткий огляд
- Налаштування проєкту
- Конфігурація Hibernate
- "Hello world" з використанням Hibernate i JPA анотацій
- Логування
- Маніпуляція об'єктами
Mapping concepts and annotations
- Агрегація і композиція
- Об'єкти і типи значень
- Component mapping
- Mapping асоціації
- Каскади
- Співвідношення один до багатьох
- Один до одного
- Багато до багатьох
- Поле в порівнянні з доступом до властивостей
- Ідентифікатори
- @Column, @Transient, @Temporal, @Formula
Hibernate API and JPA API
- Persistence lifecycle (Hibernate)
- Збереження об'єктів (Hibernate and JPA)
- Отримання об'єктів (Hibernate and JPA)
- Зміна об'єктів (Hibernate and JPA)
- Видалення об'єктів (Hibernate and JPA)
- Повторне прикріплення окремих об'єктів (Hibernate and JPA)
- Збереження або оновлення (Hibernate)
- Промивання контексту зображення (Hibernate)
- Session and entity manager similarities (JPA)
Початок роботи з JPA
- Що таке JPA?
- Hibernate в якості постачальника JPA
- Робота з об'єктами
- Кешування об'єктів
- SQL joins
- Ледача вибірка
- Equals and hash-code
- Мова запитів
- Пакетна вибірка
- Об'єднання окремих об'єктів
- Оптимістичне блокування та управління версіями
- Відображення успадкування і поліморфних запитів
Розширені відображення і конфігурації
- Compound primary keys
- Compound join columns
- Перерахування
- Mapped Superclass inheritance
- Таблиця спадкування класів
- Одиничне успадкування таблиці
- Побудова персистенції
- Уявлення для складних запитів
- Схема генерації
Після завершення курсу ви будете вміти:
- Працювати з Java та базами даних
- Маніпулювати даними за допомогою запитів з JDBC
- Проектувати додаток під ООП, отримуючи дані з БД
- Працювати з чистим JPA та з Hibernate (здійснювати прості запити)
- На основі готових класів генерувати таблиці та навпаки
- Працювати зі зв’язками таблиць як з об’єктами
Попередні вимоги
- Студенти повинні мати гарне уявлення про мову програмування Java
- Базове розуміння реляційних баз даних і SQL може бути дуже корисним
Особливості курсу
- Практичні заняття і ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
- Андрій Бондаренко - Java Developer
- Андрій Фок - Java Developer. Тренер-консультант
- Євген Кондаков - Java Developer. Тренер-консультант
- Іван Демидко - Java Developer. Тренер-консультант
- Олександр Корж - Java Developer. Тренер-консультант
- Євген Дайнека - Java Software Engineer
- Євген Тихонов - Java Developer
- Юрій Царенко - Java Developer. Тренер-консультант
- Ігор Войтов - Java Developer. Тренер-консультант
- Вадим Кожевніков - Java Developer and Trainer at CyberBionic
- Дмитро Красний - Тренер-консультант напрямку Java Developer
- Владислав Донець - Middle Java Developer at SoftServe
- Java
Якщо у вас є тільки лише загальне уявлення про програмування і ви ним ніколи професійно не займалися, то ми рекомендуємо вам почати своє навчання з самих основ. Курс «Java Стартовий» - це легкий старт в програмуванні для новачків.
Програма курсу
Введення в інфраструктуру Java
Огляд і порівняння мов програмування. Установка і налаштування віртуальної машини. Створення простого консольного додатку на Java.
Машинна математика. Типи даних
Механізм взаємодії між програмним забезпеченням і платформою. Подання інформації у бінарному коді. Системи числення. Організація пам'яті віртуальної машини Java. Змінні. Правила іменування змінних. Примітивні типи даних.
Змінні і типи даних
Змінні і константи, призначення констант, основні арифметичні операції і операції порівняння значень змінних. Демонструються приклади простого форматування і виведення рядків на екран.
Умовні конструкції
Умовні та логічні конструкції. Оператори If-else, switch-case. Скорочені умовні конструкції.
Логічні конструкції
Математична логіка. Логічні операції. Оператори І, АБО, АБО-НЕ, НЕ. Побітова арифметика.
Циклічні конструкції
Циклічні конструкції з умовою while та do-while. Циклічні конструкції з лічильником for та for-each. Оператори переходу.
Методи
Функції та процедури. Оголошення і виклик методів. Правила іменування. Рекурсивний виклик методу.
Методи
Статичний контекст. Перевантаження методів.
Масиви
Масиви. Способи оголошення масивів. Методи для роботи з масивами, клас Arrays.
Після завершення курсу ви будете вміти:
- Розбиратися в інфраструктурі Java та розуміти можливості, котрі вона надає
- Використовувати IDE IntelliJ IDEA для створення програм мовою Java
- Обирати відповідний тип даних для змінних, розуміти різницю між ними
- Використовувати умовні та циклічні конструкції
- Застосовувати рекурсію в різних задачах
- Створювати та викликати методи, розуміти їх призначення
- Створювати та обробляти масиви даних, здійснювати їх сортування
Особливості курсу
- Практичні заняття і перевірка ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
- Андрій Бондаренко - Java Developer
- Андрій Фок - Java Developer. Тренер-консультант
- Євген Кондаков - Java Developer. Тренер-консультант
- Іван Демидко - Java Developer. Тренер-консультант
- Олександр Корж - Java Developer. Тренер-консультант
- Євген Дайнека - Java Software Engineer at NetCracker
- Євген Тихонов - Java Developer
- Юрій Царенко - Java Developer at Processica
- Ігор Войтов - Java Developer. Тренер-консультант
- Олег Сотніченко - Java Developer. Тренер-консультант
- Вадим Кожевніков - Java Developer and Trainer at CyberBionic
- Дмитро Красний - Тренер-консультант напрямку Java Developer
- Владислав Донець - Middle Java Developer at SoftServe
- Java
- JavaScript
- Fullstack
Курс дозволить опанувати FrontEnd та BackEnd, фреймворки Spring IoC, Spring Security, Hibernate, Spring Data, jQuery, Node.js, Express.js, React.js, Redux. Після закінчення навчання у вас буде 8 готових проєктів для портфоліо, вміння працювати у команді та можливість створювати круті продукти самостійно завдяки універсальності знань.
Програма курсу
Модуль: Soft Skills
- Основні комунікативні навички
- Орієнтування у ситуації спілкування
- Управління емоціями
- Емоційний інтелект
- Критичне мислення
- Робота у команді
- Самопрезентація
Підготовка до початку курсу
Після успішного проходження тестувань та зарахування на курс студенти отримують список книг із Java та перше теоретичне завдання, щоб на першому ж занятті одразу перейти до практики.
Клієнтські технології JavaScript / FrontEnd
- Створення повністю адаптивного сайту або розширення за допомогою HTML, CSS, шаблонів
- Розробка веб-додатків з використанням принципу Single page application
- Вивчаються інструменти для створення веб-інтерфейсів будь-якого рівня складності (JavaScript, jQuery, Node.js, Express.js, React.js, Redux)
Серверні технології Java EE / BackEnd
- Java EE
- Фреймворки:
- Spring IoC
- Spring Security
- Hibernate
- Spring Data
- Бази даних SQL, NoSql
- Веб-сервера і хмарні технології
- Основи об’єктно-орієнтованого програмування
- Принципи ООП/SOLID
- Шаблони проєктування
- TDD
- Також в модулі передбачено парне програмування, створення онлайн-магазинів, розбір і написання програм Tinder, Instagram
Алгоритми та структура даних
- Основні алгоритми та структури метаданих
- Звичайні та типізовані масиви
- Строкові змінні
- Зв’язані списки
- Стеки та черги
- Хеш, графи, DFS і BFS
- Динамічне програмування
- Дерева
- Алгоритми кешування
- Під час проходження модуля передбачено розв’язання не менше 60 кейсів, користуючись практичним підходом
Воркшопи
Soft skills, технічна англійська та підготовка до співбесіди
Фінальний проєкт
Бонусний модуль: Англійська для ІТ
Особливості курсу
- Живі заняття у вечірній час (19:00-22:00)
- Система оцінки знань
- Підтримка ментора
- Велика кількість практичних завдань
- 8 проєктів для портфоліо
- Допомога у працевлаштуванні
Викладачі курсу
Олексій Рихальський - Software Architect, NDA
Подати заявку- Java
Курс є першою сходинкою в підготовці Java-програмістів та розрахований на студентів без досвіду програмування. Тренінг починається з розгляду основ об'єктно-орієнтованого програмування (ООП), концепцій об'єктно-орієнтованого аналізу та проектування. В курсі послідовно розглядаються важливі слова та конструкції мови програмування Java, прийоми створення простих Java-програм. Курс надає базові знання та практичні навички для успішного засвоєння матеріалу наступного курсу "NT-Java2. Основи програмування на мові Java".
Програма курсу
Поняття об'єкта
- Абстракція та її використання в об'єктній моделі
- Поняття об'єкта
- Інкапсуляція
Поняття класу
- Як співвідносяться поняття об'єкта та класу
- Атрибути та загальні операції в класах
- Спадкування та повторне використання коду
- Узагальнення, спеціалізація та успадкування
- Поліморфізм та успадкування
- Абстрактні класи
Взаємодія об'єктів
- Взаємодія об'єктів шляхом обміну повідомленнями
- Асоціація та композиція
- Час життя об'єкта
Об'єктно-орієнтований аналіз та проектування за допомогою UML
- Створення прецедентів для опису проблемної області
- Розробка діаграми прецедентів
- Створення діаграми класів для предметної області завдання
- Створення діаграм діяльності, що деталізують прецеденти
- Написання класу згідно з діаграмами класів
Огляд технології Java
- Огляд основних напрямків та технологій світу Java
- Опис важливих концепцій мови програмування Java
- Коротка характеристика етапів життєвого циклу Java-додатків
Аналіз проблеми та розробка алгоритму її рішення
- Розгляд проблеми з використанням методів об'єктно-орієнтованого аналізу
- Проектування ієрархії класів
Розробка та тестування Java-програми
- Створення класу в мові програмування Java
- Використання методу main в тестовому класі для запуску Java-програми з командного рядка
- Компіляція та виконання Java-програми
Декларування, ініціалізація та використання змінних
- Опис та використання змінних
- Примітивні типи мови Java
- Оголошення, ініціалізація, використання змінних та констант в Java
- Присвоєння значень змінним
- Приведення типу
Створення та використання об'єктів
- Оголошення та ініціалізація змінних посилальних типів
- Порівняння посилальних та примітивних типів
- Використання класу String
Використання операторів та алгоритмічні конструкції
- Умовні оператори
- Застосування вкладених умовних операторів
- Використання оператора варіанта
Використання циклів
- Створення циклів з передумовою
- Розробка арифметичних циклів
- Створення циклів з післяумовою
Розробка та використання методів
- Оголошення та виклик методу
- Порівняння методів конкретного об'єкта та статичних методів
- Перевантаження методів
Інкапсуляція та конструктори
- Застосування інкапсуляції для приховування внутрішнього устрою об'єктів
- Створення конструкторів для ініціалізації об'єктів
Створення та використання масивів
- Поняття масиву. Одновимірні масиви
- Способи ініціалізації масиву
- Створення двовимірних масивів
Реалізація успадкування
- Поняття спадкування
- Абстракція
- Явна ідентифікація об'єктів, що використовуються в коді
Після курсу слухачі зможуть:
- Аналізувати предметну область задачі та шукати способи її вирішення
- Застосовувати ключові концепції об'єктно-орієнтованого програмування
- Виявляти об'єкти предметної області
- Розробляти діаграми класів для проблемної області
- Створювати ієрархію класів, засновану на діаграмах класів
- Розробляти та тестувати Java-програми
- Описувати та використовувати змінні примітивних типів
- Повторно використовувати одного разу написаний об'єктно-орієнтована код
- Записувати та використовувати вирази, умовні оператори, цикли
- Застосовувати інкапсуляцію, розробляти та викликати методи
- Розробляти конструктори для створення об'єктів
- Створювати та використовувати одновимірні та багатовимірні масиви
- Розширювати можливості наявних класів за допомогою успадкування
Особливості курсу
- LIVE-навчання незалежно від формату участі в курсі (очно/віддалено)
- Методичка у вигляді конспекту
- Збірник лабораторних робіт
- Підбірка матеріалів в електронному вигляді
- Електронний сертифікат НЦ
- Обід та кава-брейки (очний курс)
- Консультації тренера протягом 6-ти місяців після закінчення курсу
- Java
На курсі ви зможете оволодіти мовою програмування Java, опанувати бекенд-фреймворки, керувати базами даних та використовувати базові алгоритми у розробці програмних продуктів. Протягом курсу студенти працюють в команді над реальними проєктами, які потім зможуть додати до свого портфоліо.
Програма курсу
Java basic
- Синтаксис мови програмування Java
- Основні типи даних
- Робота з об’єктами та колекціями, потоками вводу-виводу даних
- Основи об’єктно-орієнтованого програмування
- SOLID
- Популярні шаблони програмування
Java web
- Технологія Servlet API
- Ознайомлення з інтерфейсом JDBC
- Синтаксис SQL
- Робота з базою даних MySQL
Algorithms
- Розбір базових алгоритмів програмування
- Розбір базових структур даних
- Використання базових алгоритмів програмування та структур даних у розробці програмних продуктів
- Визначення ступеня складності алгоритму
- Оптимізація часу роботи програми
- Стеки, черги, хеш-структури даних, дерева
- Змагання на написання найкращого алгоритму для гри
Java Frameworks
- Робота з найбільш популярними Java фреймворками – Spring і Hibernate
- Робота з базою даних H2
- Робота з вебсокетами, AOP
- Робота в багатопотоковому середовищі
Final project
Бонусний модуль: Англійська для ІТ
Особливості курсу
- Живі заняття у вечірній час (19:00-22:00) та на вихідних (10:00-13:00)
- Система оцінки знань
- Постійна підтримка ментора
- Робота над реальними проєктами у команді
- Сертифікат про закінчення навчання
- Допомога у працевлаштуванні
Викладачі курсу
- Олексій Рихальський - Software Architect, NDA
- Олександр Рощупкін - Senior Java Developer в Smartforester
- Java
Наші викладачі розробили програму курсу Java таким чином, щоб кожен студент з нуля отримав необхідні базові знання та практичні навички.
Програма курсу
Модуль 1 - Введення в програмування
Введення. Що таке алгоритм. Базові конструкції мови програмування
- Розуміння, що таке змінна та if, прості типи даних, як наводити типи
- Розуміння, як правильно називати змінні, camelCase
- Розуміння що це таке та різницю між циклами for, while, do-while
- Розуміння порядку виконання операцій
- Розуміння, що таке "про компіляцію"
- Розуміння, для яких проєктів використовується Java
Розширений набір конструкцій та операторів
- Знання математичних, бінарних (в т.ч. зсуву), логічних операторів
- Розуміння двійкової системи, переведення у або з десяткової, додавання в стовпчик, зрушення
- Розуміння булевої алгебри, таблиця істинності, XOR, OR, AND, NOT
- Розуміння тернарного оператора (Elvis Operator)
- Git (вступне)
Розширений набір конструкцій та операторів (практика)
Масиви та багатовимірні масиви
- Розуміння, що таке одновимірний масив
- Розуміння, що таке матриця та багатовимірний масив
- Вміння обійти масив, розуміння ArrayIndexOutOfBound
- Розуміння задачі сортування та вміння зробити bubble sort
- Розуміння, чим масив відрізняється від змінної і які дані можна зберігати
Масиви та багатовимірні масиви (Практика)
Поняття класу та об'єкта. Функції методів. Рекурсія Налагодження
- Розуміння, що таке клас та об'єкт (без успадкування, інкапсуляції та поліморфізму)
- Розуміння, що таке функція
- Розуміння як правильно називати функції
- Розуміння, що таке стек викликів
- Розуміння, як і навішо треба розділяти код на функції (рефакторити)
- Розуміння, що таке рекурсія та вихід з рекурсії
- Розуміння StackOverflowException
- Розуміння, як ставити break point, де побачити call stack, як ходити по коду
Системи контролю версій Git
- Розуміння, що таке commit, історія
- Розуміння, що таке гілки
- Розуміння push, fetch, merge, pull
- Розуміння того, що таке pull request
- Розуміння, як використовується Git на реальних проєктах (master, feature branches, code reviews)
Модуль 1
Модуль 2 - ООП (об'єктно-орієнтоване програмування)
Tests
- Що таке тести і навіщо вони потрібні?
- Види тестування коду та додатку вцілому
- Що таке TDD та TLD
- Знайомство з maven
Початок об'єктно-орієнтованого програмування
- Розуміння, що таке heap та його відмінність від stack
- Розуміння, що таке інтерфейс, маркерний інтерфейс, клас та об'єкт
- Розуміння полів та методів, статичних полів та методів
- Знайомство з терміном доменна модель та розуміння. що ми моделюємо її
- Розуміння класичного наслідування, final-класів
- Розуміння роботи конструкторів
- Розуміння успадкування через композицію
Об'єктно-орієнтоване програмування. Продовження
- Абстрактні класи. Їх відмінність від інтерфейсів
- Розуміння поліморфізму. Раннє та пізнє зв'язування. Віртуальна таблиця методів
- Розуміння Enumerations
- Розуміння, що таке hashCode та equals()
- Різні типи посилань
Exceptions. Розробка API. Що, якщо метод повертає null?
- Розуміння різних підходів до обробки помилок: повернення статусу коду, exit(), повернення спеціальних об'єктів, exceptions
- Розуміння, навіщо потрібні виключення
- Розуміння різниці між checked, unchecked
- Розуміння try-catch-finally, rethrow
- Розуміння NullPointerException
- Розуміння семантики IIegallegalException, llegallegalArgumentException
- Розуміння null safety, NPE
- Розуміння, які підходи є разом повернення null: винятки, Optional, null object, empty list, so on
- Розуміння Optional
- Розуміння Null-Object Pattern
- Розуміння анотацій Nullable
Складність алгоритмів, О-велике
- Розуміння, що таке О-велике. О-мале, тета
- Розуміння алгоритму сортування злиттям
- Розуміння лінійного та бінарного пошуку
Generics, колекції
- Розуміння простих generic-ів
- Розуміння extends, <?>
- Розуміння того, як зробити generic метод
- Синтаксис виклику статичного методу з generics
- Розуміння collection, list, set, map
- Розуміння сучасних колекцій (Guava)
- Розуміння boxing/unboxing
Колекції, структури даних, продовження 1
- Розуміння Queue, Dequeue та його спадкоємців, що таке FIFO, LIFO
- Розуміння HashSet, HashMap, навіщо нам потрібно equals та hashCode
- Вміння зробити Ітератор
Колекції, структури даних, продовження 2
- Розуміння, що таке бінарне дерево, обхід бінарного дерева
- Розуміння, що таке граф, види графів
- Розуміння алгоритмів обходу графів
StreamAPI
- Функціональний інтерфейс, Lambda-expression
- Stream pipelines, terminal & conveyor operations
- Collectors
IO/NIO
- Розуміння, як рахувати файл побайтово
- Розуміння, як записати файл побайтово
- Розуміння, як читати та записувати файл як рядок
- Розуміння використання Files
- Розуміння try-with-resources
- Загальне поняття про різницю синхронного та асинхронного програмування
Модуль 2
Модуль 3 - Database
Java Annotations, Reflection
- Розуміння того, навіщо використовують анотації
- Вміння створити інструкцію
- Розуміння RetentionPolicy, Target, and so on
- Вміння обійти методи, визначені інструкцією
SQL, JDBC
- Розуміння, що таке реляційна модель
- Розуміння primary keys, 1, 2, 3 нормальної форми
- Розуміння найпростіших DQL, DDL
- Розуміння, що таке транзакція (ACID)
- Розуміння, як "сходити" в базу з джави
SQL. Продовження. Hibernate
- Що таке ORM, які завдання вирішує
- Що таке entity-manager у hibernate
- Створення сутностей та зв'язків між ними
- Короткий вступ у HQL
MongoDB. Написання найпростішої ORM
- Розуміння, що таке JSON та BSON
- Розуміння різниці між SQL та NoSQL базами даних
- Розуміння, що таке Mongo
- Розуміння, як прочитати та записати в базу
Лекція з основ операційних систем
- Розуміння, які завдання вирішує операційна система
- Розуміння різниці між основними операційними системами
- Розуміння процесів та потоків, мʼютексів, семафорів
Лекція з Linux
- Розуміння, як працює файлова система
- Розуміння stdout, stderr. Розуміння >, &>, 2>1 тощо
- Базові команди у терміналі: робота з файлами, cat, less, tail-f, ps, top, kill
- Розуміння пайпінгу
- Базові bash-скрипти
Об'єктно-орієнтований дизайн
- Розуміння всіх букв у SOLID
- Розуміння основ Unix philosophy
- Розуміння tiny types
- Розуміння неймовірності, глибоких копій
- Перший патерн factory method. Звідси: розуміння приватного конструктора, створення екземпляра статичним способом
- Загальне поняття про різницю синхонного та асинхронного програмування
Модуль 3
Модуль 4 - Web
Багатопотоковість
- Розуміння що таке Thread та Runnable
- Розуміння API потоків
- Розуміння, як створити та запустити 1 потік, багато потоків
- Розуміння, що таке race condition та dead lock
- Розуміння volatile
- Розуміння synchronized
- Вміння використовувати mutex і semaphore в джаві
- Розуміння атомарності операції
- Основні кошти в пакеті concurrency
- Розуміння, як вирішити проблему dead lock та race condition
- Розуміння патерну Observer, слова callback
Мережі, HTTP, web
- Розуміння моделі OSI
- Розуміння методів HTTP, їх обмежень
- Розуміння headers та cookies
- Розуміння життєвого циклу запиту від браузера до програми та назад. Статуси
Servlets, Chain Of Responsibility
- Вміння створити проект з модулями в maven
- Розуміння, як реалізувати Servlet
- Розуміння, як надіслати HTTP запит із curl
- Що таке filtrs
- Розуміння патерну Chain of Responsibility
Вступ до теорії мікросервісів
- Кластерні менеджери. Поняття масштабування
- Розуміння, що таке монолітна архітектура, її плюси та мінуси
- Розуміння, що таке мікросервісна архітектура та її плюсів та мінусів
REST API, реалізація REST API
Знайомство з web та роутингом http запитів та практика
Введення в спрінг
- Що таке IoC, DI?
- Як влаштований контейнер, принцип роботи
Spring boot, MVC і data
- Для чого потрібний spring - boot
- Основні моменти при роботі з MVC у Spring
- Спрінгові репозиторії
Постановка задачі на фінальний проєкт
- Розуміння, яке завдання буде вирішуватися
- Розуміння, які технології використовуватимуться
- Розуміння, що очікується наприкінці
- Розуміння, як, де і навіщо писати Javadoc
- Продумування архітектурного проекту
- Знайомство з Agile
Розробка API. Огляд патернів
- Розуміння патернів Proxy, Facade, Bridge, Adapter
- Розуміння різниці між цими патернами
Дипломна робота
Опис
Дипломна робота включає в себе реалізацію веб-додатоку або веб-сайту, який містить декілька сторінок. На практичному рівні студенти демострують отримані знання, під час навчання. Використовується робота із базами даних, зазвичай, дані зберігаються в одній із SQL DB і повинні зберігатися між запусками програми.
Захист дипломної роботи
Необхідно здати практику,яка передбачає демонстрацію робочого проекту, відповіді на будь-які питання пов'язані з проектом, демонстрацію коду на вимогу. Та окремо здається теорія по усій програмі курсу та по усім темам. Теорія здається у форматі співбесіди на Junior Developer позицію, сторонньому, незадежному експерту. За обидва блоки можна отримати від 0 до 10 балів
Особливості курсу
- 24 заняття з англійської мови
- Тестова співбесіда з технічним спеціалістом
- Майстер клас по складанню резюме та проходження співбесід
- Консультація з рекрутером та тестова співбесіда
- Супровід до моменту працевлаштування менеджером, закріпленим за групою
Викладачі курсу
- Михайлов Нікіта - Java Software Engineer
- Бібічков Ігор - Java Software Engineer
- Попов Валерій - Java Team Lead
- Фунтусов Єгор - Java (Hybris/Spartacus) Developer
- Харін Артем - Java Software Engineer
- Михайло Горбунов - Expert Java Engineer
- Шморгун Євген - Java Software Engineer
- Java
Програма курсу
HTML/CSS
У цьому блоці ти вивчиш основну розмітку HTML сторінки, з яких блоків вона складається та як її правильно будувати. Також, тобі розкажуть у якому середовищі варто працювати, як його встановити. Розглянемо основні браузери, проговоримо їх переваги та недоліки та навчимось перевіряти браузер з точки зору сумісності з наповненням нашої сторінки. За допомогою CSS, будемо створювати стилізацію сайту. Працюватимемо з картинками, різними шрифтами та кольорами. А на завершення реалізуємо невеликий макет, щоб ти закріпив всю вивчену інформацію.
MySQL
Знання Баз даних для бекенд розробника є просто необхідним. Тому у курсі ти обов'язково будеш вивчати основні прийоми роботи з MySQL. Ти навчишся створювати, видаляти, сортувати та коригувати бази даних. Дізнаєшся які є типи даних та як з ними працювати. Навчимося робити запити та познайомимось з операторами за допомогою яких можна оперувати даними таблиці. Створимо зв'язки між кількома таблицями та завершимо блок селект запитами.
Основи програмування
На цьому етапі курсу тебе чекає знайомство з такою популярною мовою програмування Java. Ти дізнаєшся які є системи числення та як почати думати як комп'ютер та розуміти його "мову". Які мови програмування відносяться до високо- та низько- рівневих, в чому їхня відмінність. Розглянемо поняття змінної та алгоритму, навчимось їх застосовувати на практиці. Також, зможеш написати свою першу програму "Hello World".
Java Core
Тут ти продовжиш вивчення Java на більш професійному рівні. Вивчиш, що таке ООП та зрозумієш в чому його специфіка. Детально освоїш всі принципи ООП та доцільність їх застосування в ній чи іншій задачі. Дізнаєшся, що таке інтерфейс та поліморфізм, як вони працюють на практиці. Вкінці блоку ти будеш працювати над проектом де ти маєш реалізувати невелику десктопну програму.
JavaScript
Для Java-розробника розуміння Frontend частини, клієнтського боку розробки, є просто необхідним. Тут ти освоїш базові речі взаємодії HTML/CSS та JavaScript. Дізнаєшся які є способи підключення JS та який з них ефективніше використовувати. Попрацюєш з основними циклами та на практиці перевіриш їх реалізацію. Дізнаєшся які є методи для роботи з масивом даних. Вся логіка веб-аплікації на стороні клієнта реалізується через JavaScript. Ти перевіриш на власному досвіді всі можливості цієї мови програмування та реалізуєш свій практичний проект у вигляді лендінг сторінки.
Java Advanced
Цей етап навчання є одним з найважливіших. Він націлений на те, щоб зробити з тебе справжнього професіонала. Тут ти опануєш фреймворк Spring без якого не обходиться жоден Java-розробник. Результатом блоку буде повноцінний проєкт який зможеш додати до свого портфоліо.
Проєкт
На цьому етапі ти зможеш застосувати всі знання, здобуті на попередніх блоках курсу. Ти збудуєш справжній потужний проект який буде включати в себе SQL, Java, Spring Boot, HTML, CSS, JS.
Тренінг "Співбесіда в IT"
Співбесіда є дуже важливим етапом пошуку роботи. Не всім вистачає сміливості її пройти. Тому, ми включили саме цей тренінг у курс, щоб ти дізнався всі лайфхаки як швидко, а головне результативно пройти співбесіду на омріяну позицію у компанії. На практиці застосуємо різні методи подолання стресу та детально розберемо про що слід говорити. Ми розповімо тобі як підкорити серце рекрутера та переконати його, що саме ти його ідеальний кандидат.
Тренінг "Методологія управління проєктами SCRUM"
Для того, щоб успішно працювати в команді та в ІТ компанії загалом потрібно розуміти як влаштовані її процеси та комунікація. На цьому тренінгу ми детально розберемо гнучку методологію SCRUM за якою працює більшість ІТ компаній України та світу. Ти на прикладі зможеш зрозуміти всі процеси які відбуваються при розробці продукту.
Тренінг "Як заробити на міжнародному фрілансі UpWork першу 1000$"
Фріланс - відмінна можливість працювати на себе та з будь-якої точки світу. Тут ти сам можеш обирати коли, де та над чим працювати. Якщо ти не націлений працювати в ІТ компанії цей тренінг саме для тебе. Тут ти дізнаєшся як вибрати проект, які є можливості кар'єрного зросту та всі деталі як правильно себе позиціювати на цій платформі.
Особливості курсу
- Робота з експертами
- Портфоліо
- Зворотній зв'язок
- Ефективне навчання
- Диплом
- Повний стек технологій
- Закритий телеграм-чат
- Гейміфікація
- Допомога з працевлаштуванням успішних студентів
Викладачі курсу
- Олександр Гуцуляк - Solution Architect at TeachMagic
- Тарас Погорецький - Senior Full Stack Engineer at EPAM
- Тарас Кундик - Frontend Developer at CodeLions
- Володимир Завада - Java Software Engineer
- Олег Коваль - Intermediate QC Engineer at SoftServe
- Яромир Яремко - Java Web Developer at Freelance
- Анна Кузій - Intermediate Software Engineer at SoftServe
- Юліан Бульбук - Middle Java Back-end Developer at Aconex Systems
- Микола Шоробура - Java Core, Java EE & MySQL Trainer
- Петро Жук - Web Software Developer at UKEESS Software House
- Сергій Сокол - Freelance IT and Web Services
- Маріна Мокра - IT and Business English
- Саша Ліщинський - Java Developer at SEVEN
- Java
Від вивчення синтаксису мови Java до створення власних програм. Опануєте шаблони проєктування та фреймворк Spring.
Програма курсу
Знайомство з курсом
Огляд курсу, організація взаємодії.
Інструменти розробки
- Java Environment (JDE, JVM, JDK)
- Системи контролю версій Git
- Intellij IDEA
- UML
Введення в Java
- Зберігання даних
- Типи данних
- Масиви
- Цикли
- Строки
- Java Memory Model
- Garbage collector
Java OOP
- Клас. Структура класу. Об'єкт
- Модифікатори доступу
- Виділення пам'яті. Робота з об'єктами в JMM
- Спадкування. Створення ланцюжків наслідування
- Поліморфізм. Перевизначення та навантаження методів
- Обгортки типу посилань над примітивними типами
- Інкапсуляція. Приховування імплементації
- Рядки. Immutable типи даних. String.format
- Класи StringBuilder, StringBuffer
- Внутрішній клас, вкладений клас, локальний клас, анонімний клас
- Анотація класу та Interface
- ENUM (Перелічення)
- Опис шаблонів проєктування
- SOLID
Винятки в Java
- Винятки у Java та іх ієрархія
- Checked, Unchecked помилки
- try...catch, throws, Stacktrace
Java Core
- Колекції в Java
- Generics
- Потоки введення-виводу
- Багатопоточність
- Stream API
- Функціональне програмування
- Анотації та рефлексія
- Логування додатків
- Регулярні вирази
- Тестування програмного забезпечення
Основи багатопоточності
- Thread, Runnable, Callable
- Volatile, synchronized, wait. notify, notifyAll
- ThreadLocal
- ExecutorService
- ForkJoinPool
Front-End
- HTML та CSS
- JavaScript
- Bootstrap
- Основи React
Бази даних
- Огляд СУБД
- Основи SQL (DDL, DML,DQL, TCL)
- ACID
- NoSQL, огляд
- JDBC
- JPA & Hibernate
WEB
- Протокол HTTP
- Servlet API
- REST
Java Spring
- Spring Core
- Spring MVC
- Spring REST
- Spring Data
- Spring Security
- Spring Boot
- Spring Integration
Додатково
- Збирач програми
- Java Message System (JMS)
- Docker
Після курсу ти зможеш:
- Опануєш поняття інкапсуляція, успадкування, поліморфізм та абстракція. Зможеш застосовувати це у своїх проєктах
- Вирішувати завдання на основі складних алгоритмів, використовуючи різні структури даних та реалізовувати їх у своїх проєктах
- Освоїш механізми багатопоточності Java, попрацюєш з основними бібліотеками та отримаєш досвід написання юніт та інтеграційних тестів
- Створювати повноцінні web-проєкти з використанням усієї різноманітності рішень Java-платформи та супутніх фреймворків
- Формувати грамотну архітектуру, конфігурацію, життєві цикли та фази складання проєкту
- Зможеш налаштовувати взаємодію з базами даних SQL, використовуючи JDBC API і найбільш популярний orm фреймворк Hiberante
- Використовувати повною мірою можливості бібліотеки для прискорення та спрощення процесу розробки
- Аналізувати та керувати результатами своєї роботи використовуючи систему контролю версій
Особливості курсу
- Інтенсивна практика і розбір домашніх завдань
- Можливість онлайн навчання + відеозаписи всіх занять
- Випускний проєкт для портфоліо, який ти презентуєш роботодавцям
- Допомога у працевлаштуванні, оформленні резюме та підготовка до співбесіди
- Підтримка викладачів
- Кар'єрні івенти
- Великий стек технологій
- Можлива оплата курсу частинами
Викладачі курсу
Артур Гетьман - Java Software Engineer at A-Bank
Подати заявку- Java
Здобутих навичок вистачить, щоб почати програмувати на мові Java. Навчитесь працювати з базами даних, зрозумієте архітектуру сучасних веб-додатків, зможете застосовувати вивчений матеріал у власних проектах.
Програма курсу
Java Start
- Введення в Java. Java SE, EE, Android
- Інсталяція JDK
- Середовище розробки Eclipse або IntelliJ IDEA
- Компіляція і запуск додатків
- Введення в синтаксис мови Java
- Типи даних: примітиви, посилання
- Робота зі змінними і операторами
- Побітові операції
- Додаток "Калькулятор"
- Масиви
- Індексна арифметика
- Робота з рядками
- Методи класів і параметри
- Оператори умовного переходу і цикли
- Робота з датою і часом
- Інструменти для відлагодження програм
- IT-English Speaking Club з викладачем з IT компанії
Java ООП
- Основи ООП. Пакети, класи, об'єкти
- Модифікатори доступу
- Інкапсуляція, успадкування
- Поліморфізм. Практичне застосування
- Робота з виключеннями
- Інтерфейси, подійно-орієнтоване програмування
- Потоки введення-виведення
- Робота з файловою системою
- Java 8: Lambda, Stream API
- Нововведення в Java 9-21
- Багатопотоковість
- Синхронізація потоків
- Пакет java.util.concurrent.*. Executors
- Особливості java.lang.Object
- Серіалізація
- Колекції: List, Queue, Deque, Map, Set
- Детальний розбір хеш таблиць
- HashMap і HashSet
- Створення мережевих клієнт-серверних додатків на Java
- Проєкт "Чат для локальної мережі"
- IT-English Speaking Club з викладачем з IT компанії
Java Pro
- Reflection API. Анотації
- Робота з XML і JSON
- Огляд патернів проєктування
- Протоколи HTTP/HTTPS
- Веб-додатки
- Java EE / Jakarta EE
- Servlets, JSP, JSTL
- Фреймворки SPRING IoC, MVC
- SPRING Boot, Data, JTA
- SPRING Security для авторизації користувачів
- Реляційні бази даних
- Основи SQL. CRUD operations
- Робота з базами даних. MySQL
- JDBC. Data Access Object (DAO)
- Технології ORM. JPA, Hibernate
- Чат боти. Створення бота для Telegram
- Автоматична збірка проєктів та управління залежностями. Maven
- IT-English Speaking Club з викладачем з IT компанії
- Розбір питань та завдань для проходження співбесід та підготовка до сертифікації від Oracle
- Написання дипломного проєкту для портфоліо. Code review від викладача
- IT-English Speaking Club з викладачем з IT компанії
Особливості курсу
- Вечірні заняття онлайн в групі
- Відеозаписи лекцій
- Чат з тренером та групою
- IT English Speaking Club
- Проєкт для портфоліо
- Стажування в проекті за підсумками захисту диплому та тестування
- Додаткові можливості в пакеті Plus і Premium
Викладачі курсу
- Всеволод Євгієнко - CEO та тренер
- Дмитро Міщук - Тренер
- Антон Вальянос - Тренер
- Олександр Цимбалюк - Тренер
- Філіп Севене - Тренер
- Олег Суховеров - Тренер
- Олег Новіков - Тренер
- Олексій Рихлюк - Тренер
- Олексій Васильєв - Тренер
- Java
Під час навчання діти можуть оцінити практичну сторону питання (як це зробити) і розуміння теми (чому і навіщо). Учні демонструють свої знання, вирішуючи завдання своїм способом, пояснюючи алгоритми своїми словами, допомагаючи одногрупникам виправляти помилки і створять презентації за своїми завершеними проєктами. Це все показує, наскільки добре дитина засвоїла програму курсу.
План курсу
Основні теми курсу
- Огляд Java: введення, переваги та історія створення мови програмування
- Синтаксис мови для початківців
- Класи та об'єкти
- Примітивні і посилальні типи даних, літерали
- Типи змінних, оголошення і ініціалізація
- Модифікатори доступу і класу
- Основні оператори мови
- Цикли і оператори циклу
- Оператори прийняття рішень
- Числа
- Символи, що керують послідовністю і методи класу символів
- Рядки і методи класу String
- Масиви
- Дата і час
- Регулярні вирази
- Методи
- Потоки введення/виведення і робота з файлами і каталогами
- Винятки
- Вкладені і внутрішні класи
- Спадкування класів, інтерфейсів, методів і конструкторів за допомогою ключових слів super, extends, instanceof і відносин IS-A i HAS-A
- Перевизначення (overriding)
- Поліморфізм
- Абстракція: абстрактний клас і метод, успадкування абстрактного класу
- Інкапсуляція
- Інтерфейси
- Пакети
- Структури даних
- Колекції
- Дженерики (узагальнення)
- Мережа
Навчання на курсі дозволяє:
- Розвивати творчий потенціал
- Ознайомитися з основами алгоритмізації
- Розвивати аналітичне мислення
- Реалізовувати на практиці отримані в цій області знання
- Отримати хороші навички при написанні програм
Особливості курсу
- Для дітей від 14 років
- Групові заняття в Zoom
- Зручний графік занять
- Не витрачаєте час на дорогу
- Можливість індивідуального навчання
- Сертифікат про проходження курсу
Викладачі курсу
Максим - Java, Python, C/C++
Подати заявку- Java
Курс призначений для студентів, які хочуть навчитися програмувати на основі платформи Java Standard Edition. Ми навчимо вас розробці та налагодженні аплікацій, познайомимо з основними елементами технології та конструкціями мови Java Standard Edition, основними архітектурними та проектировочними прийомами в рамках платформи. Ви навчитеся основам Web-програмування та дізнаєтеся про мережеві можливості Java. Під керівництвом викладача самостійно напишіть програмний проєкт та презентуєте його.
Програма курсу
Загальна характеристика мови Java
- Історія мови Java
- Байт-код
- Віртуальна машина Java (JVM)
- Трансляція, інтерпретація та компіляція
- JIT-компіляція
- JDK та його структура
- Команди JDK:
- javac
- java
- appletviewer
- jar (en10)
- Їх використання та параметри
- Пошук та завантаження класів
- Створення та запуск першої програми на Java
- Вихід із програми та завершення її роботи
- Використання Eclipse та NetBeans IDE: створення та виконання прикладних програм
Типи даних та основні операції з ними
- Алфавіт мови
- Коментарі
- Ключові слова
- Прості (примітивні) типи даних
- Ідентифікатори, вибір імен ідентифікаторів
- Змінні та константи
- Оголошення та ініціалізація змінних
- Типи даних: прості та за посиланням
- Область видимості та час життя змінних
- Оператори
- Операції:
- арифметичні
- привласнення
- відносини
- логічні
- Перетворення та приведення числових типів
- Пріоритет операцій
- Використання круглих дужок
Потік керування
- Складовий оператор (блок)
- Умовний оператор та його види
- Цикли: for, while, do while
- Нескінченні цикли
- Оператор switch
- Переривання потоку керування, мітки
- Оператор goto
Масиви
- Оголошення та ініціалізація масивів, у т.ч. анонімні
- Лінійні та багатовимірні масиви, "нерівні" масиви
- Ітерація щодо елементів масиву
- Масиви та присвоєння
- Передача та повернення масивів в/з методів
- Копіювання масивів
- Клас Arrays: заповнення, порівняння елементів та їх сортування
- Пошук у масивах
- Параметри командного рядка
- Методи: аргументи змінної довжини
Введення в ОВП. Введення у UML
- Об'єктна модель
- Основні положення:
- абстрагування
- інкапсуляція
- модульність
- ієрархія
- Об'єкти та класи
- Об'єкти
- Визначення (з прикладами)
- Стан
- Поведінка
- Операції
- Ідентичність
- Інкапсуляція
- Класи та інтерфейси
- UML. Нотація UML
- Діаграми класів
- Відношення між об'єктами
- Залежності, їх різновиди
- Резюме
- Асоціації
- Реалізації
- Зв'язки, їх множинність
Об'єкти та класи
- Класи
- Поля та методи (визначення, синтаксис оголошення)
- Специфікатори доступу public і private
- Поля класів: ініціалізація явна та за замовчуванням, специфікатор final та константи
- Доступ до полів та методів
- Методи: параметри (посилання та прості типи) та повертаються, використання setта get-методів, перезавантаження методів, правила перезавантаження, ключове слово strictfp
- Конструктори: конструктори за замовчуванням, виклик одного конструктора з іншого
- Блоки ініціалізації
- Статичні поля та методи: ініціалізація константи, статичні блоки ініціалізації
- Використання цього для доступу до членів класу
- Збір сміття та видалення об'єктів
Спадкування та поліморфізм. Пакети
- Спадкування та поліморфізм як інструмент створення ПЗ
- Суперклас та підкласи, ставлення узагальнення, успадкування в Java
- Виклик конструкторів суперкласів, порядок дзвінків. Ключове слово super()
- Перевизначення методів, правила перевизначення
- Спадкування та статичні поля та методи класів
- Абстрактні класи та методи - поняття, виклик конструкторів, реалізація методів у субкласи
- Інтерфейси. "Множинне" успадкування
- Визначення та реалізація інтерфейсів
- Розширення інтерфейсів
- Композиція як альтернатива множинному успадкування
- Поліморфізм
- Ієрархія наслідування
- Перетворення та приведення типів
- Використання встановцівід
- Відмова від успадкування: термінальні (final) методи та класи
- Включення як альтернатива множинному успадкування
- Пакети
- Вкладення пакетів
- Повторне використання коду та пакети
- Захист доступу
- Імпорт: класів, статичних методів та полів
Клас Object
- Глобальний суперклас Object
- Методи equals(), hashCode(), toString(), finalize(), clone() та ін.
- Правила реалізації equals() та hashCode()
- Інтерфейс Cloneable та його реалізація
- Клонування: поверхневе та глибоке
Внутрішні класи. Перелік
- Синтаксис оголошення
- Створення об'єктів внутрішніх класів
- Поля та методи внутрішніх класів
- Вкладення внутрішніх класів та доступ до членів зовнішніх класів
- Посилання це у внутрішньому класі
- Доступ до полів та методів зовнішнього класу з внутрішнього
- Внутрішні класи та специфікатори доступу
- Вкладені інтерфейси
- Застосування внутрішніх класів
- Внутрішні локальні класи (Method-LocalInnerClasses)
- Анонімні внутрішні класи
- Вкладені (внутрішні статичні) класи (статичні класи)
- Створення екземплярів
- Доступ до екземпляра зовнішнього класу
- Компіляція програм із внутрішніми класами
- Перелік
- Перерахування як класи
- Методи values(), valueof(), name(), ordinal()
- Константи, конструктори, методи та поля
- Перерахування та конструкція switch
- Імпорт членів перерахувань
Презентація програмного проєкту
- Клас String
- Постійні об'єкти
- Зберігання рядків у пам'яті
- Основні операції класу String (створення, конкатенація, порівняння, пошук символів та підрядків у рядках та ін.)
- Перетворення найпростіших типів даних
- Розбивка рядків: клас StringTokenizer
- Змінні об'єкти: класи StringBuffer та StringBuilder
- Основні методи
- StringBuffer vs StringBuilder
- Класи BigInteger та BigDecimal
- Основні операції
- Документування коду
- Включення коментарів
- Документування пакетів
- Дескриптори загального призначення
- Коментарі до класів, методів та полів
- Використання javadoc
Обробка помилок та виключення
- Підходи до обробки помилок часу виконання
- Поняття виключення та виняткової ситуації
- Ієрархія класів виключень у Java
- Контрольовані (що перевіряються) та неконтрольовані (не перевіряються) винятки
- Генерація виняткової ситуації та оператор throw
- Оголошення контрольованих винятків, ключове слово throws
- throws та перезавантаження методів
- Перехоплення винятків
- Перехоплення "всіх" винятків
- Обробка винятків
- Повторна генерація винятків
- Блок finally: звільнення ресурсів
- Створення власної ієрархії винятків
- Реєстрація помилок, логування: логери, рівень логгер, рівень повідомлень, обробники (об’єкти підкласу java.util.logging.Handler)
- Приклад
Рефлексія
- Основні можливості Reflection API
- Клас Class
- Використання Reflection API для отримання вказівників на функції
- Використання Reflection API для доступу до приватних членів
Система введення-виведення
- Потоки, ієрархія класів потокового введення-виведення:
- поняття потоку
- потоки введення/виводу
- механізм роботи з потоками
- ієрархія потокового введення-виводу
- Субкласи FilterOutputStream та FilterInputStream
- Байтові потоки
- Символьні потоки
- Клас File. Клас RandomAccessFile
- Серіалізація та десеріалізація об'єктів:
- поняття
- призначення
- реалізація
- Приклад
- Інтерфейс Externalizable
Універсальні типи. Класи колекцій
- Параметризовані типи: класи та інтерфейси
- Параметри типу
- Обмеження накладені на параметризовані типи:
- прості типи
- інстанціювання
- суперклас
- виняток
- Параметризовані типи та JVM
- Поняття абстрактного типу даних (АТД)
- Структури даних:
- списки
- стеки
- множини
- дерева
- карти
- Обхід колекцій:
- інтерфейси Iteratorта та ListIterator
- цикл "foreach"
- Компаратори
- Клас Collections:
- пошук та сортування елементів
- заповнення
- синхронізований уявлення
- незмінні уявлення та ін
Багатопоточність
- Концепція потоку.
- Стан потоку:
- створення потоків
- -runnable і -runninig потоки
- waiting / blocked / sleeping-потоки
- стан потоку dead
- Пріоритети потоків
- Метод yield()
- Метод join()
- Потоки-демони
- Синхронізація:
- синхронізація методів
- синхронізаційні блоки
- Отримання lock об'єкта та блокування
- Взаємодія потоків (ThreadInteraction)
Робота з базами даних
- Основи побудови баз даних
- Нормальні форми
- Запити SELECT, INSERT, UPDATE, DELETE
- JDBC
- Driver, Connection, Statement, ResultSet
- Пул з'єднань
- Data Access Object
Робота з XML
- Знайомство з XML
- Поняття формальної коректності та допустимості
- Потоковий аналіз з урахуванням SAX
- Аналіз на базі DOM
- Генерація Java-класів за схемою
Мережеві можливості Java
- Клас URL
- Клас URLConnection
- Сокети
Технологія RMI
- Загальні уявлення про технології розподіленого програмування
- Принципи організації RMI
Java Beans
- Поняття про Java Beans
- Проблема persistence
- Збереження біна у XML-файлі
Основи веб-програмування
- Принципи клієнт-серверної взаємодії
- Поняття та життєвий цикл сервлету
- Організація JSP-сторінки
- Зумовлено змінні
- Взаємодія JSP і JavaBeans
- Передача даних між сторінками
- Область видимості бина
Інверсія управління в Java
- Поняття Inversion of Control
- Характеристика SpringIOC
- Контрольний тест
Захист програмного проєкту
Мінімальні вимоги до учасників
Базові знання процедурного та об'єктно-орієнтованого програмування.
Особливості курсу
- Допомога ментора
- Практика
- Проєкт в портфоліо
- Сертифікат про проходження курсу
- Заняття 2 рази на тиждень
- Java
Цей 7-годинний онлайн-курс розроблений для того, щоб надати Java-розробникам поглиблене розуміння модульного тестування в Java. Курс охоплює широкий спектр тем, від базових концепцій до просунутих методик, і включає різні фреймворки та методології, такі як JUnit 5, Mockito, AssertJ та ArchUnit. Він також заглиблюється в спеціалізовані сценарії тестування, такі як тестування void-методів, статичних класів, абстрактних класів та незмінності ресурсів.
Програма курсу
Вступ до модульного тестування
- Типи тестування
- Що таке модульне тестування?
- Принципи модульного тестування
- Переваги та недоліки модульного тестування
Модуль 1. Основи JUnit 5
- JUnit 5 Основи та відмінності від попередніх версій
- Параметризоване тестування в JUnit 5
- Покриття коду: Використання таких інструментів, як JaCoCo
Модуль 2. Mockito - імітація залежностей
- Макети об’єктів: Використання та створення макетів за допомогою Mockito
- Тестування залежностей: Як тестувати код із залежностями
- Тестування exceptions: Правильне тестування виняткових ситуацій у Java (JUnit 5, Mockito)
Модуль 3. Створення макетів і шпигунів для надійного тестування
- Custom Argument Matchers (Mockito)
- Налаштування поведінки макетів за допомогою MockSettings
- Spying (Mockito)
- Використання Answer (Mockito)
- Захоплення аргументів за допомогою ArgumentCaptor
Модуль 4. Просунуті техніки Mockito
- Тестування void методів: Техніки та підводні камені (Mockito)
- Тестування абстрактних класів: Стратегії та найкращі практики (JUnit 5, Mockito)
- Тестування статичних класів: Підходи та виклики (PowerMock, Mockito)
Модуль 5. Тест-керована розробка (TDD) та поведінково-керована розробка (BDD)
- Концепція TDD
- TDD на практиці (JUnit 5, Mockito)
Модуль 6. Поведінково-керована розробка (BDD)
- BDD принципи та практики
- Написання тестів в стилі BDD (JUnit 5, BDDMockito)
Модуль 7. Підвищення ефективності стратегій тестування
- Мутаційне тестування: Вступ та важливість (PITest)
- Вступ до архітектурного тестування (ArchUnit)
- AssertJ: Покращення читабельності тестового коду (AssertJ)
- Незмінність ресурсів: Забезпечення незмінності вихідних ресурсів (JUnit 5)
Модуль 8. Кращі практики та антипатерни
- Кращі практики модульного тестування (JUnit 5, Mockito)
- Антипатерни в модульному тестуванні (JUnit 5, Mockito)
Підсумки курсу
Підсумки курсу та наступні кроки.
Рекомендовані ресурси
- Посібник користувача JUnit 5 - Офіційна документація
- Документація Mockito - Офіційна документація
- Приклади ArchUnit - Репозиторій GitHub
- Документація AssertJ - Офіційна документація
Особливості курсу
- Онлайн курс
- Тести та практичні завдання
- Допомога в чаті
- Доступ до матеріалів курсу: 6 місяців
Викладачі курсу
Сергій Сучок - Senior Java Developer
Подати заявку- Java
Наш курс націлений на те щоб показати як працює java інструментарій, навчити вас писати прості програми, запускати їх на виконання, деплоїти на простий сервер додатків і дебажити код для знаходження помилок. Так само ми навчимо вас користуватися базами даних, створювати нову БД і підключати її до свого проекту. У курс навчання включені крім того і система юніт-тестування JUnit і система автоматичного складання проекту maven.
Програма курсу
Урок 1. Вступна лекція
- Вступна лекція
- Знайомство:
- встановлення JDK
- встановлення Eclipse
- консольний додаток
Урок 2. JUnit, TDD, Tomcat
- JUnit
- TDD
- debug
- Про сервера додатків, Tomcat
- Запуск найпростішого додатку
- Веб-додатку на JSP
Урок 3: PostgreSQL, SQL
- Установка PostgreSQL
- Підключення до бази даних через Driver Manager
- Використання SQL
Урок 4: Git
- Системи контролю версій
- Встановлення git
- Створення власного проєкту в репозиторії
- Робота з репозиторієм
- Бренчі, теги
Урок 5: Ant, maven, gradle
- Системи побудови проєктів
- Ant, maven, gradle
- Перетворення проєкту в maven
Урок 6: Linux, Shell, Telnet
- Основи Linux
- Shell
- Telnet, FTP, SSH
Попередні вимоги
- Пройти курс Java Start або прочитати книгу Я. Файна "Java Programming"
- Мати ноутбук/ПК для роботи
- Скачати
- JDK
- Eclipse
- PostgreSQL
- Tomcat
- Вміння читати англійський текст
Особливості курсу
- Необмежений доступ до відео-лекцій та завдань
- Сертифікат по завершенню курсу
Автори курсу
Сергій Немчинський - 20 років у програмуванні, зних 15 років у Java Certified Scrum Master
Подати заявку- Android
- Java
Курс розробки на Android – для тих, хто хоче відносно швидко отримати спеціальність, яка зараз користується дуже великим попитом. Ви навчитеся створювати додатки на платформі Android.
Програма курсу
Git Course
Вiдеокурс по GitLab допоможе вам зрозуміти основні концепції та інструменти, які використовуються для керування проєктами програмного забезпечення. Під час цього курсу ви ознайомитеся з основами системи контролю версій Git та платформою GitLab, яка надає широкий спектр можливостей для спільної роботи над кодом, відстеження змін, управління задачами та багато іншого. Ви дізнаєтеся, як ефективно використовувати GitLab для спільної роботи в команді, ведення проєктів та забезпечення якості програмного забезпечення.
Intro
Вступне завдання. Студент знайомиться зі слухачами для view, API рядків, основи написання автотестів, вступ до Jetpack Compose.
Benchmark
Комплексний UI, багатопоточність та введення в архітектуру додатків. У рамках завдання студент знайомиться з списковими уявленнями (RecyclerView), багатопоточністю в андроїді, Java collection framework, з реактивним підходом у програмуванні (RxJava/Kotlin coroutines), з архітектурою додатків (MVP/MVVM/MVI), написання автотестів для складного UI, списки в Jetpack Compose, міграція на Jetpack Compose.
Tracker
GPS та робота додатків у фоні. В рамках завдання студент знайомиться зі способами роботи додатків у фоні, робота з базами даних (SqLite), Rest-API (Firebase), GPS в андроїді та з картами гугла. Також авторизація у додатку.
News feed
У рамках завдання студент знайомиться з просунутими способами використання RecyclerView, способами посторінкового завантаження даних із Rest-API із збереженням у базу даних та робота без доступу до мережі.
Forecast
У рамках завдання студент знайомиться з просунутими способами використання RecyclerView, завантаження даних через Rest-API та додаткові можливості геолокації.
Telegram
В рамках завдання студент знайомиться з роботою з чужим кодом та підтримкою наявних додатків.
Попередні вимоги
- Мати змогу написати кілька додатків по гайдам з ютубу/юдемі
- Вміння працювати з Recycler, Jetpack Compose - на рівні гайдів, розуміння архітектури додатків
- Знання англійської мови на рівні читання технічної документації
Особливості курсу
- Швидкість проходження курсу залежить від вас. Швидше вчитесь - менше платите. Середній час проходження 6-8 місяців.
- 7 днів тестового періоду
- Менторинг
- Безкоштовна заморозка
Ментори курсу
- Олександр Дудник - Senior Android Developer
- Максим Кичук - Android Developer at Grid Dynamics
- Роман Криволапов - Senior Android Developer at Digital
- Олексій Кравченко - Android Developer at TrackEnsure Inc
- Дан Гладштейн - Android Software Engineer at YIT - Yedioth Information Technology
- Руслан Мамедов - Android Developer at Luxoft
- Павло Зоря - Android Engineer at EPAM Systems
Сторінки
Читайте нас в Telegram, щоб не пропустити анонси нових курсів.
Відгуки про курси

Дуже крутий курс! Інформація подається чітко, структуровано, без води. Я пройшла шлях від “нічого не знаю про ІТ” до того, що можу впевнено виконувати завдання на практиці. Викладачі реально допомагають розібратись, а не просто читають матеріал. Після курсу вже пройшла перші співбесіди — відчуваю себе зовсім на іншому рівні.

хотіла вивчити джаву, шо само по собі складно
на курсі було 0 підтримки від менторів і особи, шо перевіряла дз
отримувала коментарі в стилі "тут неправильно"
коли писала, шо не знаю як зробити - відповідь була в стилі "пошукайте в інтернеті"

Завершила курс Java Fullstack Dev і дуже задоволена курсом. Рекомендую всім, хто хоче отримати фундаментальні знання з розробки сучасних додатків.

Прошел курс Fullstack Java Developer и с уверенностью могу сказать — это было одно из лучших решений в моей жизни. Обучение дало мне крепкую теоретическую базу и реальные практические навыки, которые сразу пригодились на новой работе. Спустя всего несколько месяцев после окончания курса, я получил предложение о работе в Германии, и сейчас успешно работаю в международной IT-компании.
Программа курса очень насыщенная и продуманная: Java, Spring, REST API, базы данных, React — всё это преподаётся на реальных кейсах и проектах. Особенно хочу отметить профессионализм преподавателей: они всегда готовы помочь, объясняют доступно, делятся опытом.
Если вы хотите быстро войти в профессию, получить востребованные навыки и реально изменить свою жизнь — этот курс точно стоит пройти. Я не просто научился кодить, я стал разработчиком. И теперь работаю в классной компании — мечта сбылась!







