Курси Java

Фільтр
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
6 місяців
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
27 500 UAH за курс
Вечірні заняттяВидається диплом/сертифікатСупровід ментораРеальний проект у портфоліо
IT STEP Academy
  • Java
Подробиці

Java розробку слід вибирати через її кросплатформеність – на Java можна створити будь-яку програму для будь-якого пристрою. Також мова програмування Java має дуже високу швидкість та продуктивність, що робить її універсальною.

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

Java SE

  • Введення в мову програмування "Java"
  • Змінні типи даних, оператори
  • Логічні оператори, оператори розгалужень, побітові оператори
  • Цикли
  • Рядки, масиви одновимірні, багатовимірні
  • Методи (з прикладу статичних методів)
  • Об'єктно-орієнтоване програмування
  • Винятки
  • Динамічні структури даних. Java Collection Framework
  • Lambda вирази
  • Робота з файлами
  • Stream API
  • Багатопотоковість
  • Системи контролю версій
  • Робота у команді. SDLC. Scrum
  • Використання jUnit
  • Іспит

Розробка веб-сторінок на мові розмітки HTML з використанням каскадних таблиць стилів CSS та мови програмування JavaScript

  • Введення у Web-технології. Структура HTML. Форматування тексту за допомогою HTML. Структура HTML
  • Форматування за допомогою CSS. Списки. CSS відступи та поля
  • Використання графіки. Гіперпосилання. Принципи навігації веб-сайту
  • Таблиці
  • Позиціонування. Верстка веб-сторінок блоками
  • Форми. Фрейми
  • Введення в JavaScript
  • Об'єкт. Масиви. Об'єкт Array. Рядки. Введення в об'єктно-орієнтоване програмування
  • Обробка подій
  • Document Object Model

Java SE

  • Введення в розробку серверних рішень з використанням Java та Spring
  • Модель OSI. HTTP. REST API
  • Spring Boot
  • Docker. Docker Compose
  • Реляційні та NoSQL бази даних
  • Взаємодія із джерелами даних
  • Мікросервісна архітектура
  • Іспит

Особливості курсу

  • Заняття 3 рази на тиждень по 2 пари
  • Структурована подача знань
  • Викладачі практики
  • Сертифікат за здобутки
Більше інформації
Курс
Рекомендуємо
Формат
Online
Початок навчання
23.07.2024
Тривалість
10 місяців
Рівень
Для початківців
Мова навчання
Ukrainian, English
Вартість
37 000 UAH за курс
Вечірні заняттяВидається диплом/сертифікатМожливе працевлаштуванняСупровід ментораРеальний проект у портфоліо
GoIT
  • Java
Подробиці

Ти навчишся створювати "начинку" вебсайтів, програм, застосунків та зможеш працювати Junior Java Developer

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

Для розробника на Java завжди повно вакансій і безмежні кар’єрні перспективи. На курсі Java online ти опануєш професію з нуля за 10 місяців і зможеш працювати в топових IT-компаніях

Java Core

  • Огляд мови Java, знайомство з Git
  • Змінні Java, типи даних, оператори
  • Масиви, умови, введення з консолі
  • Цикли
  • ООП, класи, методи
  • Конструктор, блоки ініціалізації, внутрішні класи
  • Робота з рядками. Immutable objects
  • Інтерфейси та перерахування
  • Дженерики та колекції
  • Потоки введення-виведення. Робота з файлами
  • Функціональне програмування, Stream API
  • Багатопоточність
  • Web, протоколи
  • +1 командний проєкт

Java Developer

  • Системи збору та управління залежностями
  • Unit testing
  • Реляційні СУБД. Мова SQL
  • Основи Java DataBase Connectivity (JDBC)
  • Розширена робота з JDBC
  • CRUD, міграції баз даних
  • Клієнт-серверна архітектура, протокол HTTP
  • Сервлети: основи
  • Сервлети: Cookies, Templates, Front Controller
  • ORM. Hibernate
  • Hibernate Entity Mapping. HQL
  • Spring Boot: Core
  • Spring Boot: MVC
  • Spring Data
  • Spring Boot: Security
  • CI/CD-процеси
  • +1 командний проєкт

Soft skills

  • Філософія Agile
  • Методологія Scrum
  • Командна праця
  • Тайм менеджмент
  • Аналітика проєктів
  • English speaking club
  • Робота з EnglishDom Words
  • Заняття з працевлаштування
  • Складання грамотного резюме
  • Створення сторінки на LinkedIn
  • Написання мотиваційного листа
  • Майданчики для пошуку роботи
  • Підготовка до HR-інтерв'ю
  • Підготовка до технічного інтерв'ю
  • Комунікативні навички
  • Тестові співбесіди

Особливості курсу

  • Вечірні заняття (19:30 - 21:30)
  • 2-3 вебінари на тиждень
  • Кабінет my.goit
  • Спілкування в чаті
  • Допомога менторів

Викладачі курсу

  • Саша Слесар - Senior Java/Kotlin Developer в Overonix
  • Саша Янов - Team Lead в аутсорсинговій компанії
  • Іван Мельничук - Director of Engineering в GoIT
  • Софія Бондаренко - Senior Java Developer в GlobalLogic
  • Саша Макаров - Senior Software Engineer в DigiAge inc.
Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
4 місяців
Рівень
Для початківців
Мова навчання
Ukrainian, English
Вартість
безкоштовно
Заняття цілий деньВидається диплом/сертифікатМожливе працевлаштуванняСупровід ментораРеальний проект у портфоліо
Mate academy
  • Java
Подробиці

На курсі Java ти опануєш популярну професію Java-розробника. Після курсу ти будеш вправно користуватися такими технологіями, як JDBC, Java Web, Hibernate, Spring, та багато іншого.

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

Java Basics

  • Introduction
  • Main Concepts
  • Data Types
  • Operators
  • Methods
  • Boolean
  • Conditionals
  • Loops
  • Arrays
  • String
  • Practice

Java Basics Extended

  • Environment Setup
  • Type Casting
  • Arrays Extended
  • Switch Case
  • Classes
  • Classes Advanced
  • Methods Advanced
  • Practice

Git and Terminal

  • Environment Setup
  • Command Line Basics
  • Git Basics
  • Working With Branches
  • Working With Remote Repo (GitHub)

Java Core

  • How to Solve Tasks
  • Memory, Wrappers, String
  • Bit Manipulation
  • OOP
  • Abstract Class vs. Interface
  • Exception
  • Files
  • Equals, Hashcode, and Clone
  • Patterns and Recursion
  • Generics
  • ArrayList
  • LinkedList
  • PECS
  • HashMap
  • Array Practice
  • Immutable
  • Set, Queue, Stack, and Comparator
  • Java JUnit
  • Java 8 — Part 1
  • Java 8 — Part 2
  • Java 8 — Part 3
  • Java 9-19 Improvements
  • Stream API Practice
  • Java SOLID
  • Java Dependency Injection
  • Logger

SQL Basics

  • Introduction to SQL
  • SELECT Statement
  • WHERE Statement
  • NULL Value, LIKE, BETWEEN, and IN Statements
  • ORDER BY, LIMIT, DISTINCT
  • Aliases
  • Aggregate Functions
  • GROUP BY Statement
  • JOIN Statement
  • Functions
  • HAVING Statement

Java JDBC

  • Database Intro
  • JDBC Intro
  • DAO vs. Service
  • INNER JOIN
  • Advanced: Performance Improvement
  • SQL Practice

How the Web Works

  • Introduction to the web
  • OSI model
  • HTTP
  • Encryption
  • API interface
  • Security in the Web

Java Web

  • Web Intro
  • Servlet Life Cycle
  • Web Practice
  • Security in Web
  • Advanced: Project Deployment
  • How to Add Project to GitHub

Java Hibernate

  • Hibernate Entities and Transactions
  • Entity Relations and Life Cycle
  • JPA and Cascade types
  • Working With Lazy Initialization
  • Criteria API
  • Transaction Isolation Levels
  • N+1 Problem
  • DB Changes Management Tools
  • Hibernate Inheritance
  • Hibernate Cache Levels

Spring

  • Spring Intro
  • Bean Life Cycle
  • Spring Web
  • REST
  • REST Practice
  • Spring Security — Part 1
  • Spring Security — Part 2
  • How to Add Second Project to GitHub
  • Spring Security — Part 3
  • Spring Testing
  • Spring Transactional

Employment

  • Introduction
  • Preparing Your Resume
  • Preparing Your Cover Letter
  • Common HR Interview Questions
  • Creating Your LinkedIn Profile
  • Other Profiles
  • How to Find Vacancies
  • How to Find Recruiters' Contacts
  • How to Apply for a Job in the Right Way
  • Creating Your Djinni Profile
  • Interview Preparation

Java Multithreading

  • Multithreading Intro
  • Thread Synchronization
  • Thread Manipulation
  • java.util.concurrent — Part 1
  • java.util.concurrent — Part 2

Java Spring Boot

  • Spring Boot Intro
  • Spring Data JPA
  • Pagination and Sorting in Spring Boot, Swagger
  • Spring Boot Testing
  • Docker in Spring Boot
  • Spring Boot Practice
  • Spring Boot AOP

Algorithms and Data Structures

  • Main Concepts
  • Algorithm Complexity
  • Data Structures: Array
  • Search Algorithms
  • Data Structures: Linked List
  • Data Structures: Stack
  • Data Structures: Queue
  • Data Structures: Hash Map
  • Data Structures: Hash Set

Angular

  • Angular Basics

Особливості курсу

  • Графік навчання в будні (9:00 - 18:00)
  • Проходження відбору на курс
  • Онлайн підтримка щодня
  • Ком'юніті студентів
  • Кар'єрна підтримка впродовж 3 років

Викладачі курсу

  • Mariia Shliakhova - Coordinator 
  • Vladyslav Boholii - Java Developer / Mentor
  • Lillia Ponomarenko - Java Developer / Mentor
  • Mykyta Arkhanhelskyi - Java Developer / Coach
  • Konstantin Nikiforov - Java Developer / Mentor
  • Bohdan Chupika - Java Developer / Coach
  • Sofia Diakonova - Java Developer / Coach
Більше інформації
Курс
Формат
Online
Початок навчання
Будь-який момент
Тривалість
6 місяців
Рівень
Для початківців
Мова навчання
Ukrainian, English
Вартість
49 740 UAH за курс
Гнучкий графікВидається диплом/сертифікатМожливе працевлаштуванняСупровід ментораРеальний проект у портфоліо
Mate academy
  • Java
Подробиці

На курсі Java ти опануєш популярну професію Java-розробника. Після курсу ти будеш вправно користуватися такими технологіями, як JDBC, Java Web, Hibernate, Spring, та багато іншого.

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

Java Basics

  • Introduction
  • Main Concepts
  • Data Types
  • Operators
  • Methods
  • Boolean
  • Conditionals
  • Loops
  • Arrays
  • String
  • Practice

Java Basics Extended

  • Environment Setup
  • Type Casting
  • Arrays Extended
  • Switch Case
  • Classes
  • Classes Advanced
  • Methods Advanced
  • Practice

Git and Terminal

  • Environment Setup
  • Command Line Basics
  • Git Basics
  • Working With Branches
  • Working With Remote Repo (GitHub)

Java Core

  • How to Solve Tasks
  • Memory, Wrappers, String
  • Bit Manipulation
  • OOP
  • Abstract Class vs. Interface
  • Exception
  • Files
  • Equals, Hashcode, and Clone
  • Patterns and Recursion
  • Generics
  • ArrayList
  • LinkedList
  • PECS
  • HashMap
  • Array Practice
  • Immutable
  • Set, Queue, Stack, and Comparator
  • Java JUnit
  • Java 8 — Part 1
  • Java 8 — Part 2
  • Java 8 — Part 3
  • Java 9-19 Improvements
  • Stream API Practice
  • Java SOLID
  • Java Dependency Injection
  • Logger

SQL Basics

  • Introduction to SQL
  • SELECT Statement
  • WHERE Statement
  • NULL Value, LIKE, BETWEEN, and IN Statements
  • ORDER BY, LIMIT, DISTINCT
  • Aliases
  • Aggregate Functions
  • GROUP BY Statement
  • JOIN Statement
  • Functions
  • HAVING Statement

Java JDBC

  • Database Intro
  • JDBC Intro
  • DAO vs. Service
  • INNER JOIN
  • Advanced: Performance Improvement
  • SQL Practice

How the Web Works

  • Introduction to the web
  • OSI model
  • HTTP
  • Encryption
  • API interface
  • Security in the Web

Java Web

  • Web Intro
  • Servlet Life Cycle
  • Web Practice
  • Security in Web
  • Advanced: Project Deployment
  • How to Add Project to GitHub

Java Hibernate

  • Hibernate Entities and Transactions
  • Entity Relations and Life Cycle
  • JPA and Cascade types
  • Working With Lazy Initialization
  • Criteria API
  • Transaction Isolation Levels
  • N+1 Problem
  • DB Changes Management Tools
  • Hibernate Inheritance
  • Hibernate Cache Levels

Spring

  • Spring Intro
  • Bean Life Cycle
  • Spring Web
  • REST
  • REST Practice
  • Spring Security — Part 1
  • Spring Security — Part 2
  • How to Add Second Project to GitHub
  • Spring Security — Part 3
  • Spring Testing
  • Spring Transactional

Employment

  • Introduction
  • Preparing Your Resume
  • Preparing Your Cover Letter
  • Common HR Interview Questions
  • Creating Your LinkedIn Profile
  • Other Profiles
  • How to Find Vacancies
  • How to Find Recruiters' Contacts
  • How to Apply for a Job in the Right Way
  • Creating Your Djinni Profile
  • Interview Preparation

Java Multithreading

  • Multithreading Intro
  • Thread Synchronization
  • Thread Manipulation
  • java.util.concurrent — Part 1
  • java.util.concurrent — Part 2

Java Spring Boot

  • Spring Boot Intro
  • Spring Data JPA
  • Pagination and Sorting in Spring Boot, Swagger
  • Spring Boot Testing
  • Docker in Spring Boot
  • Spring Boot Practice
  • Spring Boot AOP

Algorithms and Data Structures

  • Main Concepts
  • Algorithm Complexity
  • Data Structures: Array
  • Search Algorithms
  • Data Structures: Linked List
  • Data Structures: Stack
  • Data Structures: Queue
  • Data Structures: Hash Map
  • Data Structures: Hash Set

Angular

  • Angular Basics

Особливості курсу

  • Працюєш? Вчись у власному темпі
  • Зідзвони з менторами тричі на тиждень
  • Чат з одногрупниками
  • Навчальні матеріали «без води» замість довгих лекцій
  • Матимеш 2 робочих проєкта в портфоліо
  • Гарантуємо працевлаштування після навчання
  • Повернемо кошти якщо не знайшов роботу в ІТ

Викладачі курсу

  • Mariia Shliakhova - Coordinator
  • Mykyta Arkhanhelskyi - Java developer / Coach
  • Bohdan Chupika - Java developer / Coach
Більше інформації
Відеокурс / Платформа
Формат
Online
Початок навчання
Будь-який момент
Тривалість
9 місяців
Рівень
Для початківців, Для досвідчених
Мова навчання
Ukrainian
Вартість
3 450 UAH за місяць
Гнучкий графікВидається диплом/сертифікатСупровід ментораРеальний проект у портфоліо
Prog Academy
  • Java
  • Fullstack
Подробиці

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

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

Верстка HTML/CSS

  • Основні завдання Front-End. Інструменти розробки.
  • Введення у HTML. Структура коду.
  • Основні теги роботи із текстом, зображеннями.
  • Створення веб-форм.
  • Робота із таблицями даних.
  • Списки.
  • Введення в CSS, поділ змісту та уявлення.
  • Контейнер CSS. Підключення CSS стилів. Застосування валідатора.
  • CSS селектори.
  • Способи розкладки CSS: float, grid, flexbox.
  • Використання SASS, SCSS.
  • Анімація, трансформація, переходи.
  • Робота з градієнтами.
  • Сучасні типи верстки.
  • Методологія БЕМ та рекомендації щодо назви класів.
  • CSS-фреймворки: Bootstrap.
  • CSS media queries.
  • Нові специфікації HTML5 та CSS3.
  • Семантичні теги. Теги фізичної та логічної розмітки у HTML5.
  • Різні види верстки. Адаптивність та оптимізація верстки.

JavaScript

  • JavaScript: історія, роль, синтаксис.
  • Базові конструкції мови.
  • Примітивні типи даних, змінні, оператори.
  • Логічні структури.
  • Робота з масивами: одновимірними, двовимірними.
  • Методи та функції.
  • Класи та об'єкти. Основи ООП.
  • Конструктори та прототипи.
  • JavaScript у браузерах: модель W3C DOM.
  • Форми та регулярні вирази.
  • Події, опрацювання подій.
  • Інтерактивні інтерфейси. AJAX, Promise, Fetch.
  • Сучасні можливості ES6-ES9.
  • Архітектура REST.
  • Бібліотека jQuery.
  • Вивчення React/Vue.js.
  • Збірка проектів: WebPack, Gulp.
  • Робота з npm, npx, yarn.
  • Основи Node.JS.
  • Написання дипломного проекту для портфоліо. Code review від викладача.

React

  • Введення у React.
  • Підключення, запуск.
  • Концепція функціональних компонентів, робота з компонентами, JSX.
  • Робота з props, використання компонентів класу.
  • Робота зі State.
  • Події в React.
  • Робота з сервером (promise, fetch) та обробка помилок.
  • Життєвий цикл компонентів.
  • Компоненти вищого порядку, context, proptypes.
  • React Router.
  • Hooks.
  • Redux.
  • Babel, WebPack.

Java Start

  • Введення в Java. Java SE, EE, Android.
  • Інсталяція JDK.
  • Середовище розробки Eclipse / IntelliJ IDEA.
  • Компіляція і запуск додатків.
  • Введення в синтаксис мови Java.
  • Типи даних: примітиви, посилання.
  • Робота зі змінними і операторами.
  • Побітові операції.
  • Додаток «Калькулятор».
  • Масиви.
  • Індексна арифметика.
  • Робота з рядками.
  • Методи класів і параметри.
  • Оператори умовного переходу і цикли.
  • Робота з датою і часом.
  • Інструменти для відлагодження програм.

Java ООП

  • Основи ООП. Пакети, класи, об'єкти.
  • Модифікатори доступу.
  • Інкапсуляція, успадкування.
  • Поліморфізм. Практичне застосування.
  • Робота з виключеннями.
  • Інтерфейси, подійно-орієнтоване програмування.
  • Потоки введення-виведення.
  • Робота з файловою системою.
  • Java 8: Lambda, Stream API.
  • Нововведення в Java 9-19.
  • Багатопотоковість.
  • Синхронізація потоків.
  • Пакет java.util.concurrent.*. Executors.
  • Особливості java.lang.Object.
  • Серіалізація.
  • Колекції: List, Queue, Deque, Map, Set.
  • Детальний розбір хеш таблиць.
  • HashMap і HashSet.
  • Створення мережевих клієнт-серверних додатків на Java.
  • Проект "Чат для локальної мережі".

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.
  • Розбір понад 100 питань і завдань для проходження співбесід та підготовка до сертифікації від Oracle.
  • Написання дипломного проекту для портфоліо. Code review від викладача.
  • Гарантоване стажування у комерційному проекті за підсумками тестування та захисту дипломного проекту.

Особливості курсу

  • Курс складається з 2-х частин, кожну частину можна проходити у вигляді окремого курсу: 3 модулі Frontend та 3 модулі Java Backend
  • Особистий кабінет із матеріалами
  • Відеозаписи лекцій
  • Доступ до матеріалів на 2 роки
  • Онлайн підтримка ментора 10 місяців
  • Безлімітний IT English Speaking Club
  • Проект для портфоліо
  • Стажування у проекті за підсумками захисту диплома та тестування.

Викладачі курсу

Всеволод Євгієнко - засновник ІТ школи Prog.Academy. Професійний програміст з досвідом понад 15 років. Автор курсу Java Pro та низки авторських тренінгів.
Дмитро Міщук - Front-End розробник з досвідом понад 7 років. Працював у компаніях DataArt, PrivatBank, EPAM.
Олександр Цимбалюк - 6 років викладання. Автор офлайн та онлайн курсів з Java та Python.
Філіп Севене - Front-End розробник з досвідом понад 5 років. Працював у компаніях Samsung, CNW, GDBAY. Викладає розробку 3 роки.

Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
43 занять
Рівень
Для досвідчених
Мова навчання
Ukrainian
Вартість
17 600 UAH за курс
Гнучкий графікВидається диплом/сертифікатРеальний проект у портфоліо
Hillel IT school
  • Java
Подробиці

Під час проходження навчання освоїте стек EE-технологій, який використовується для створення додатків. Після закінчення курсу набутих навичок буде достатньо для розуміння принципів ООП, створення Java-додатків і сервісів бізнес-рівня.

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

Інструменти програмування

  • Знайомство та план курсу
  • Системи контролю версій Git. Вендори Github. Gitlab Базові команди
  • Просунуте керування Git

Введення в ООП

  • Введення в ООП
  • Принцип ООП: Інкапсуляція
  • Принцип ООП: Спадкування
  • Успадкування в Java
  • Принцип ООП: Поліморфізм
  • Поліморфізм у Java

Типи даних

  • Зберігання даних
  • Примітивні та референсні типи даних
  • Символи у Java
  • Рядки в Java

Винятки

  • Введення у винятки
  • Викид та обробка винятків

Можливості середовища розробки Intellij IDEA

  • Налагодження програми (Debug)
  • Функціонал, що спрощує/прискорює розробку

Потоки введення-виводу

  • Введення в I\O
  • Робота з файлами
  • Пакет NIO
  • Основні компоненти пакета NIO

Багатопоточність

  • Багатопоточність у Java
  • Стандартні методи підтримки багатопоточності
  • Проблеми стандартної синхронізації Java і пакет java.util.concurrent
  • Просунуті способи синхронізації

Колекції в Java

  • Ієрархія колекцій у Java
  • Базові реалізації списків
  • Структура даних "Словник"
  • Базові реалізації інтерфейсу Map
  • Множини
  • Черги

Складність алгоритмів та О-нотація

  • Складність алгоритму
  • Робота з типовими алгоритмами
  • Робота з деревами
  • Робота з графами

Узагальнення (Generics)

  • Введення в узагальнення
  • Спадкування та організування в узагальненнях

Stream API

  • Введення в Stream API
  • Основні операції Stream API

Функціональне програмування

  • Функціональні інтерфейси
  • Лямбда-вирази

Бази даних та SQL

  • Введення в SQL
  • Операції DDL, DML
  • Операції DQL
  • Операції TCL

Робота з базами даних у Java

  • Вступ до JDBC
  • Конвертація SQL-даних у Java-об'єкти

Анотації та рефлексія

  • Рефлексія
  • Анотації

Дизайн та архітектура додатків

  • Ієрархія шаблонів проектування
  • Реалізація шаблону проектування

Складачі програм

  • Maven як складач проєктів
  • Конфігурація та складання проєкту
  • Gradle як збирач проєктів
  • Конфігурація та складання проєкту

Тестування програмного забезпечення

  • Огляд фреймворків для юніт-тестування
  • Реалізація тестових сценаріїв

Комунікація у мережі

  • Основи комунікації у мережі
  • Реалізація протоколу переданих даних
  • Синхронні та асинхронні операції
  • Комунікація за допомогою Netty

Web-проєкти

  • Введення у Web-проєкти
  • Введення в HTTP
  • Архітектура Web-сервісів
  • Реалізація Web-сервісу
  • Архітектура RESTful-додатків
  • Автоматичне документування програм

Веб-сервери

  • Веб-сервери: Simple Web Server, JBoss, WildFly Контейнери Tomcat
  • Java-сервлети

Логування додатків

  • Основи логування
  • Конфігурація логування

Object-Relational Mapping Framework

  • JPA та Hibernate
  • Конфігурування та виконання запитів

Spring Framework

  • Введення у Spring Framework
  • Spring Core
  • Фреймворк Spring Data Access
  • Конвертація SQL-даних у Java-об'єкти
  • Фреймворк Spring Web
  • RESTful-програми в Spring
  • Введення у Spring Boot
  • Конфігурація Spring Boot додатків
  • Фреймворк Spring Data
  • Фільтрування та пагінація
  • Фреймворк Spring Security
  • Конфігурація безпеки Web-додатків

Виконання дипломного проєкту.

Особливості курсу

  • Для студентів, які закінчили курс Java Basic або для людей з базовими знаннями в будь-якій С-подібній мові програмування
  • Вивчення мови програмування Java
  • Навчитися працювати з ООП
  • Застосовувати отримані знання та навички для створення Java-додатків
  • Заняття проводиться у форматі дистанційного навчання
  • Доступ до відеозаписів занять в особистому кабінеті
  • Оперативна служба підтримки студентів
  • Викладачі курсу - практикуючі фахівці, що працюють в топових компаніях
  • Можливість повернути всі внесені за навчання кошти до шостого заняття
  • Бонуси курсу:
    • тренінги по проходженню співбесіди та складанню резюме з HR-фахівцем компанії;
    • тестова співбесіда з технічним фахівцем.

Викладачі курсу

Сергій Пасько - Software Architect в Onseo.
Андрій Борисов - Lead Developer в Mobile Effort.
Євген Пінчук - Java Software Engineer в Digital Turbine.
Костянтин Лось - Senior software engineer в Barclays Investment Bank.
Євген Соколов - Principal Engineer, Tech Lead в Solarisbank.
Євгенія Куленіч - Senior Java Developer в Luxoft.

Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
32 занять
Рівень
Для досвідчених
Мова навчання
Ukrainian
Вартість
15 000 UAH за курс
Гнучкий графікВидається диплом/сертифікат
Hillel IT school
  • Java
  • QA Automation / QA Manual
Подробиці

Під час проходження курсу вас навчать основам ООП, користуватися основною бібліотекою мови Java, навичкам автоматизації тестування Selenium. Після завершення навчання випускники мають необхідний рівень знань і навичок для працевлаштування на позицію Junior QA Automation.

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

Вступ до автоматизації

  • Тестування і автоматизація. В чому різниця?
  • Переваги і недоліки автоматизації
  • Складові частини автоматизації
  • Обмеження автоматизації

Знайомство з Java

  • Розглянемо установку і налаштування всього необхідного оточення
  • Як працює Java
  • Напишемо перший простий проект

Введення у програмування. Основи мови програмування

  • Типи даних
  • Управління потік програми
  • Цикли
  • Масиви
  • Методи

Вчимося програмувати. Основи ООП

  • Парадигми ООП
  • Спадкування
  • Поліморфізм
  • Інкапсуляція
  • Винятки
  • Колекції в Java

Вивчаємо основні засоби роботи з проектами

  • Навчимося працювати з системами контролю версій Git
  • Розглянемо засоби збірки проектів на прикладі maven
  • Попрацюємо з системами безперервної інтеграції на прикладі TeamCity

Основи веб-додатків

  • Розглянемо архітектуру веб-додатків
  • Основи HTML і CSS
  • Попрацюємо з Browser Developer Tools

Автоматизуємо тестування веб за допомогою Selenium

  • Введення у Selenium
  • Робота з елементами сторінки
  • Очікування
  • Виконання коду Selenium + Browsermob Proxy

Проектуємо свій тестовий проект на основі Selenium

  • З яких основних частин складається тестовий проект
  • Конфігурація проекту
  • Основні компоненти
  • Логірування

Особливості курсу

  • Для проходження курсу необхідні знання ручного тестування на рівні Intern/Junior та базові знання сучасних мов програмування
  • Заняття проходять в режимі онлайн-трансляції
  • Відеозаписи зберігається в особистому кабінеті та доступні після закінчення навчання
  • Оперативна служба підтримки студентів
  • Викладачі курсу - практикуючі фахівці, що працюють в топових компаніях
  • Можливість повернути всі внесені за навчання кошти до шостого заняття
  • Бонуси курсу:
    • тестова співбесіда з технічним фахівцем;
    • тренінги по проходженню співбесіди та складанню резюме з HR-фахівцем.

Викладачі курсу

Владислав Товкун - Senior Software Test Automation Engineer в EPAM.
Дмитро Нечаєв - Senior Automation QA Engineer в Rew Consulting Services.
Дмитро Корноух - Automation QA Engineer в EPAM.
Олексій Мушкамбарян - Team Lead Automation QA в Autodoc.
Олександр Павлов - QA Automation Java в Infopulse.

Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
96 годин
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
22 000 UAH за курс
Вечірні заняттяВидається диплом/сертифікатРеальний проект у портфоліо
Main Academy
  • Java
Подробиці

Курс для студентів, які бажають освоїти нову професію або перепрофілюватися на фахівців з розробки додатків мовою Java. Він охоплює всі необхідні теоретичні та практичні аспекти розробки додатків на Java, кожен з яких закріплюється лабораторною роботою. Крім того, учасники курсу будуть залучені до виконання навчального проєкту, що дозволить закріпити отримані знання на практиці.

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

Базові принципи Java

  • Будова простих Java-додатків та інструментальні
  • засоби їх створення
  • Класифікація типів даних
  • Примітивні типи та операції з ними
  • Керуючі конструкції Java
  • Масиви

Об'єктноорієнтоване програмування Java

  • Класи та об'єкти
  • Методи
  • Конструктори
  • Статичні елементи
  • Секції ініціалізації
  • Пакети
  • Успадкування та поліморфізм
  • Абстрактні класи та інтерфейси
  • Робота з рядками
  • Винятки та діагностичні твердження
  • Вкладені класи
  • Перерахування
  • Узагальнене програмування
  • Колекції, відображення та ітератори
  • Дозвіл навантаження
  • Багатопотоковість
  • Важливі сервісні класи
  • Основні прийоми ООП

Технології Java SE

  • Потоки введення-виведення. Робота з файлами
    • Поняття потоку введення-виводу
    • Байтові та символьні потоки
    • Основні класи потоків
    • Принципи обробки помилок введення-виведення
    • Блок try з автоматичним керуванням ресурсами
    • Клас File. Операції із файлами
    • Клас RandomAccessFile
  • Серіалізація
    • Поняття серіалізації
    • Серіалізація складних об'єктів
    • Серіалізація та успадкування
    • Модифікатор transient
    • Нестандартна серіалізація
    • Інтерфейс Externizable
  • Бази даних та JDBC
    • Поняття таблиці, ключа, зв'язку таблиць
    • Поняття SQL
    • Команди create table, select, insert, update, delete
    • Організація JDBC; драйверний принцип
    • Встановлення з'єднання. Класи DriverManager та
    • Connection
    • Обробка результатів запиту. Клас ResultSet
    • Підготовлені запити
    • Аналіз метаданих
    • Базові можливості управління транзакціями
  • Основи Swing
    • Введення у Swing
    • Основні інтерфейсні елементи
    • Опрацювання подій
    • Менеджери розміщення
  • Завантаження класів. Рефлексія
    • Процес завантаження класів
    • Основні завантажувачі
    • Ієрархія завантажувачів класів
    • Основні можливості Reflection
    • Клас Class
    • Отримання інформації про клас
    • Динамічне завантаження класів та створення екземплярів
    • Використання рефлексії для отримання вказівників на методи
    • Динамічний виклик методів
    • Використання рефлексії доступу до приватних членів
  • Анотації
    • Поняття інструкції
    • Анотація @Override
    • Приклад написання власних анотацій
  • Java 8 нові features
    • Lambda Expressions
    • Functional Interfaces
    • Method References : Operator
    • Streams
    • New Date/Time API in Java 8
    • Static methods and default methods in interfaces
  • Java – Networking
    • TCP/IP Networking Basics
    • Java Socket's and ServerSocket's
    • UDP Networking Basics
    • UDP DatagramSocket
    • Using URLConnection and InetAddress
  • Проксі-класи
    • Клас Proxy
    • Типові використання проксі-об'єктів
  • Розробка програмного забезпечення
    • Життєвий цикл розробки ПЗ
    • Інструменти збирання java. Основи Maven
    • Прийоми тестування. Основи JUnit 4
    • Основні інструкції, що підтримуються в JUnit 4
    • Затвердження assert, що підтримується JUnit 4
    • Створення тестових завдань у Junit
  • Git Basics
    • Creating GitHub repo
    • Committing your changes
    • Reverting
    • Pushing to a remote repository
    • Pulling from a remote repository
    • Resolving Conflicts
    • Branches
  • Складання сміття
    • Фундаментальні принципи збирання сміття
    • Поняття доступного для збирання об'єкта
    • Фіналізатори
    • Поняття про воскресіння об'єктів
    • М'які посилання (Weak Reference)
  • Основи безпеки
    • Рівні захисту у Java
    • Security Manager та файли повноважень
    • Модель пісочниці

Навчальний проєкт

Особливості курсу

  • Вечірні заняття (19:00 - 21:30) у режимі живих онлайн зустрічей
  • Велика кількість практичних завдань
  • Постійний фідбек від тренера
  • Навчальний проєкт
  • Заняття з англійської
  • Сертифікат лише після проходження всіх тестів, захисту дипломного проєкту та сертифікаційного іспиту
  • Кар’єрний тренінг з HR-фахівцями

Викладачі курсу

  • Євгеній Лазарєв - Java Software Engineer в Grid Dynamics
  • Олександр Ігнатенко - Java Developer
  • Олексій Абаєв - Android-розробник
Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
30 занять
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
уточнюйте
Гнучкий графікВидається диплом/сертифікат
Sigma Software University
  • Java
Подробиці

На курсі ви отримаєте знання та навички із практичного застосування принципів ООП на рівні вимог корпоративного іспиту 1Z0-808 Oracle Certified Associated, Java SE8 Programmer.

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

 Основи структурного програмування та вступ до ООП

  • Типи даних
  • Алгоритми розгалуження та циклів, обробка масивів
  • АРІ класів String, Arrays, ArrayList
  • Шаблон Model-View-Controller для побудови класів.

Основи об’єктно-орієнтованого проєктування

  • Статичні поля та методи, примітивні та об’єктні параметри методів, перезавантаження методів, ініціалізація змінних, поняття import та static import
  • Наслідування, модифікатори доступу, ключові слова this, super та final, клас Object, перевизначення методів, поліморфізм, приведення типів об’єктних змінних, абстрактні класи та інтерфейси, внутрішні класи, функціональні інтерфейси та лямбда-вирази
  • Обробка винятків, робота із Strings, Wrappers, Enums, Var-args, Garbage Collector, Dates/Time API

Потокове програмування: 

  • Алгоритми: parsing текстів, серіалізація файлів
  • Контейнери: фреймворк колекцій, технологія Generics
  • Багатопотокове програмування, Threads-технології
  • Фреймворк потоків Stream API, програмування паралельних потоків
  • Робота з базами даних, технологія JDBC

Особливості курсу

  • Формат навчання blended learning
  • Можливість отримати сертифікат від корпорації Oracle
Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
6 тижнів
Рівень
Для досвідчених
Мова навчання
Ukrainian
Вартість
6 000 UAH за курс
Гнучкий графікВидається диплом/сертифікат
Sigma Software University
  • Java
Подробиці

Курс для тих, хто прагне поглибити свої знання у Java. На заняттях Ви навчитесь писати Java web-орієнтовані додатки та юніт-тести з використанням JUnit, Mockito, а також отримаєте необхідний досвід з Spring core, Inversion of Control, Spring JDBC, Spring Security, Spring data та Hibernate.

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

Project Bootstrapping

  • Git
  • Gradle
  • JUnit
  • Mockito
  • SQL
  • Spring Initializer

Web Services

  • Spring Web
  • Spring Core
  • Spring Security
  • Spring Data
  • Error Handling

Вимоги для проходження курсу

  • Базові знання синтаксичних конструкцій, циклів, умовних операторів, масивів, колекцій
  • Загальне розуміння, що таке Spring тип, ООП в Java. Що таке клас, метод, конструктор, поле класу, видимість в Java
  • Знання англійської не нижче рівня Pre-Intermediate

Особливості курсу

  • Необхідний мінімум теорії та багато live-coding
  • Велика кількість домашніх завдань, що перевіряються в індивідуальному порядку
Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
12 місяців
Рівень
Для початківців
Мова навчання
Russian
Вартість
32 400 UAH за курс
Гнучкий графікВидається диплом/сертифікатСупровід ментораРеальний проект у портфоліо
JavaRush
  • Java
Подробиці

Курс від нуля до Junior-спеціаліста за 12 місяців. Протягом навчання Ви вивчите всі навики та технології необхідні для майбутньої професії.

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

Java Syntax

  • Вводное занятие. Команды и первая программа на Java
    • о java преимуществах, области применения
    • о JavaRush и Java‑университете
    • структура программы, метод main
    • sout
    • рассказ о сайте и WebIDE
  • Работа с переменными, типа int и String
    • сохранение текста в переменную, ее вывод в консоль
    • объявление и инициализация переменных String
    • комментарии в коде
    • элементарные математические операции с переменными типа int
    • инкремент, декремент
    • конкатенация
    • Integer.parseInt(), String.valueOf()
  • Знакомство с типами и ввод с клавиатуры. Знакомство с IDEA
    • хранение примитивных переменных в памяти
    • хранения String переменных в памяти
    • byte, short, char, long, float, double
    • System.in, Scanner
    • методы Scanner
    • установка IDEA, скачивание проекта, скачивание JDK (версия 11)
    • установка плагина, рассказ о его функционале
  • Условный оператор
    • if, if-else, if-else-if
    • блоки команд
    • вложенные блоки команд (вложенные if-ы)
    • Тип boolean
    • операторы сравнения, в т.ч. double
    • логические И, ИЛИ, НЕ
    • тернарний оператор
    • сравнение примитивов и String
  • Факультатив
    • Подтягиваем новичков
    • Опытным рассказываем про фишки IDEA и т.п.
    • компиляция класса в байт-код из консоли, запуск программы
  • Циклы
    • проблематика на примере задачи сделать что-то много раз
    • while
    • break, continue
    • for
    • do-while
    • сравнение разных циклов, выявление где какой лучше использовать
  • Массивы
    • создание и заполнение массивов
    • обход массива
    • хранение массивов в памяти
  • Двумерные массивы
    • двумерные массивы
    • зубчатые массивы
    • n-мерные массивы
  • Функции
    • объявление и вызов методов
    • параметры
    • возвращаемое значение, void
    • модификаторы доступа
    • локальные переменные метода
    • модификаторы методов, метод main
  • Работа со строками и продолжение предыдущей темы
    • константы
    • сокрытие переменных (shadowing)
    • экранирование символов
    • основные методы класса String
  • Факультатив
    • литералы
    • кодировки
    • вспомогательные классы для работы со строками: StringBuilder, String.format
    • утилитный класс Arrays
  • Типы данных. Знакомство с ООП
    • примитивные типы
    • приведение типов данных
    • ссылочные типы
    • объекты
    • null
    • знакомство с ООП
    • наследование
  • Объекты
    • создание объектов (new)
    • конструктор, конструктор по умолчанию
    • конструктор с параметрами
    • порядок вызова конструкторов при наследовании
    • доступ к полям объекта (геттер, сеттер)
    • hashCode, equals
  • Классы и static
    • статические переменные
    • сравнение статических и нестатических переменных
    • статические методы
    • порядок инициализации при использовании конструкторов и статических блоков
    • внутренние классы
  • Факультатив
    • жизненный цикл объекта
    • загрузка класса
  • Списки и Generics
    • классы обертки
    • ArrayList
    • Array VS ArrayList
    • типизация ArrayList (дженерики)
  • Коллекции
    • иерархия коллекций
    • Set, HashSet
    • iterator, for-each
  • Коллекции
    • Map, HashMap
    • для каких задач лучше использовать какие коллекции
    • Collections
  • Факультатив
    • LinkedList
    • ArrayList VS LinkedList
    • Queue
    • SortedMap, TreeMap
  • Singleton, Enum, switch
    • зачем нужны перечисления
    • объявления Enum
    • Enum - лучший синглтон
    • switch
  • Исключения
    • нормальное выполнение кода и ошибки в рантайме
    • try-catch
    • иерархия исключений
    • multicatch
    • throw
    • checked и unchecked исключения
    • throws
  • Исключения
    • finally
    • создание своих исключений
    • Throwable
    • stack trace
    • try with resources
    • AutoCloseable
  • Факультатив
    • Оборачивание исключения
    • Error
  • Потоки ввода-вывода
    • InputStream
    • Reader
    • BufferedReader
    • OutputStream
    • Writer
    • BufferedWriter
  • Потоки ввода-вывода. Pattern Decorator
    • ByteArrayInputStream
    • ByteArrayOutputStream
    • комбинирование потоков
  • Потоки ввода-вывода. java.nio
    • io VS nio
    • FileChannel
    • Selector
    • Path
    • Paths
    • Files
  • Работа со временем и датой
    • Date
    • DateFormat
    • Calendar
    • LocalDate, LocalTime, LocalDateTime
    • Instant
    • ZonedDateTime
    • DateTimeFormatter
  • Git. Итоговый проект. (Крипто-анализатор)

Java Core

  • ООП: инкапсуляция, полиморфизм. Интерфейсы
    • инкапсуляция
    • полиморфизм
    • приведение типов
    • this, super
    • интерфейсы
  • ООП: Перегрузка, переопределение, Абстрактные классы
    • абстрактный класс
    • реализация абстрактных методов предка
    • перегрузка (overload) методов - одинаковые названия
    • переопределение (override) методов
  • Stream API
    • анонимный внутренний класс
    • реализация абстрактных методов предка
    • лямбда выражения
    • функциональные интерфейсы
    • method reference
    • Stream
    • промежуточные и терминальные методы Stream-а
    • map-reduce
  • ООП: композиция, агрегация, наследование
    • ассоциация: композиция и агрегация
    • наследование
  • Интерфейсы: сравнение с абстрактным классом, множественное наследование
    • объявление поведения
    • дефолтные методы
    • реализация нескольких интерфейсов
    • проблема “ромба”
    • сравнение абстрактных классов и интерфейсов
  • Приведение типов, instanceof switch-expression
    • instanceof
    • приведение типов (расширение и сужение)
    • switch-expression, Enum
  • Особенности вызова конструкторов. Блок static
    • процесс создание объекта
    • порядок вызова конструкторов
    • порядок инициализации переменных
  • Устройство Object: equals, hashCode, clone, toString(). Immutable objects
    • класс Object
    • методы класса Object
    • mutable & immutable objects
  • Рекурсия
    • рекурсия
  • Знакомство с нитями: Thread, Runnable, start, sleep
    • Thread
    • Runnable
    • start
    • sleep
    • interrupt
  • Знакомство с нитями: synchronized, volatile, wait, notify. DeadLock
    • synchronized
    • volatile
    • join
    • wait, notify
    • проблема DeadLock
  • Executors
    • ExecutorService
    • паттерн “фабричный метод”
    • добавление задач в сервис
    • Callable
    • получение результата: Future
    • остановка ExecutorService
    • FixedThreadPool
    • CachedThreadPool
    • ScheduledExecutorService
  • ThreadLocal, Callable, Future
    • ThreadLocal контекст
    • ThreadLocalRandom
  • Внутренние/Вложенные классы, примеры: Map.Entry
    • вложенные классы
    • внутренние классы
    • внутренние статические классы
    • внутренние анонимные классы
    • примеры разных типов классов из JDK
  • Сериализация JSON/XML/YAML
    • java сериализация
    • форматы данных xml, json, yaml
    • jackson ObjectMapper
  • Reflection API
    • зачем нужен Reflection API
    • получение данных: класса, метода, конструктора, поля
    • создание объекта
    • изменение внутреннего состояния объекта
    • прокси
    • RMI
  • Аннотации в Java
    • декларативный и императивный подход написания кода
    • популярные аннотации: @Deprecated, @Override, @Nullable,...
    • создание аннотаций
    • обработка аннотаций в рантайме
  • Факультатив
    • работа с Swing
  • Sockets
    • Socket
    • ServerSocket
    • live coding: написание примитивного чата для группы
  • Итоговый проект

Java professional

  • Сборка мусора и типы ссылок в Java
    • память JVM: stack и heap
    • CG: Serial, Parallel, CMS, G1, Shenandoah, ZGC
    • кеш
    • WeakReference, SoftReference, PhantomReference
  • Паттерны проектирования
    • поведенческие: цепочка ответственности, команда, итератор, интерпретатор, посредник, хранитель, наблюдатель, состояние, стратегия, посетитель, шаблонный метод
    • порождающие: прототип, строитель, синглтон, абстрактная фабрика, фабричный метод
    • декоратор, компоновщик, фасад, приспособленец, прокси
  • Методологии разработки
    • waterfall
    • v-model
    • incremental
    • RAD model
    • agile
    • iterative
    • spiral
  • Основы Maven. Установка Maven, управление зависимостями, виды Maven-репозиториев, сборка Java-проекта
    • скачивание, прописывание переменных окружения
    • создание maven-проекта
    • зависимости
    • плагины
    • фазы (lifecycle)
    • профили
    • билд артефактов
  • Опыт работы с Guava, Apache Commons Collections
    • Multimap, BiMap
    • Multiset
    • неизменяемые коллекции
    • Objects: hashCode, equals
    • Throwables
    • CollectionUtils
    • StringUtils
  • JUnit
    • зачем нужно тестирование
    • типы тестирования
    • @Test
    • @Before, @After
    • @BeforeClass, @AfterClass
    • параметризованные тесты
  • Mockito
    • моки
    • mock и spy
    • when и thenReturn
    • verify
    • any, once, times
  • Логирование
    • зачем нужны логи
    • уровни логирования
    • slf4j
    • реализации: log4j, JUL, logback, common-loggins
    • аппендеры
  • Устройство сети. Сетевая модель
    • топология сети
    • модель OSI
    • DNS
  • Архитектура ПО. Клиент-серверная архитектура и ее составляющие, трехуровневая архитектура, архитектурные шаблоны
    • клиент-серверная архитектура
    • трехуровневая архитектура (клиент-сервер-БД)
    • критерии хорошей архитектуры: эффективность, гибкость, расширяемость, масштабируемость, удобство тестирования, читаемый и понятный код
    • модульная архитектура. декомпозиция
  • Протоколы HTTP/HTTPS. Протокол передачи данных, HTTP-запросы и ответы, отличия HTTP и HTTPS. Cookies, Session
    • протоколы передачи данных в сети
    • http методы (GET, POST, PUT, …)
    • параметры запросов
    • тело запроса
    • хедеры
    • коды ответов
    • http VS https
    • http сессии
    • куки
    • http/2
  • HttpClient
    • AJAX
    • java http client
    • синхронные и асинхронные запросы
    • задача на получение данных с нета, например погода
  • Сервлеты, Java servlet API. Пишем простое веб-приложение
    • что такое сервлет
    • жизненный цикл
    • сервлет-контейнер Tomcat
    • doGet, doPost
    • redirect VS forward
    • фильтры
  • Контейнеры сервлетов: Tomcat, развертывание приложения, настройка сервера
    • практика по предыдущей лекции
  • Знакомство с MVC (Model-View-Controller). JSP
    • набор архитектурных принципов и идей MVC
    • схемы MVC
    • MVC в вебе
    • типичная ошибка: бизнес-логика в контроллере
    • MVC на примере задачи
    • JSP
  • Веб-сервисы
    • что такое веб-сервис
    • протоколы http, jms, ftp,...
    • синхронные и асинхронные запросы
    • облачные сервисы: IaaS, PaaS, SaaS (что угодно as a service)
  • HTML-факультатив
    • что такое HTML
    • структура HTML документа
    • теги и их атрибуты
    • CSS, его синтаксис
    • классы и идентификаторы
    • селекторы
  • Итоговый проект. Servlet-quest конкурс
    • Написать на сервлетах текстовую пошаговую игру-квест

Работа с базами данных. Hibernate.

  • Введение в базы данных. Установка СУБД (MySQL). ddl, dml
    • зачем нужны БД
    • реляционные и нереляционные БД
    • реляционная модель
    • CAP теорема
    • установка MySQL developer
    • группы SQL (ddl, dml, dcl, tcl)
  • Типы данных. Создание таблицы. Написание insert, select, update, delete
    • создание схемы
    • создание таблиц
    • изменение структуры таблиц
    • insert
    • select
    • update
    • delete
  • Выбор данных
    • select с условием
    • перечень выбираемых данных
    • subselect
    • join: left, right, inner, cross
    • group by и агрегатные функции
    • index
  • Транзакции БД
    • концепции ACID (Atomicity, Consistency, Isolation, Durability)
    • управление транзакциями
    • уровни изоляции данных
  • Проектирование баз данных
    • первая нормальная форма
    • вторая нормальная форма
    • третья нормальная форма
    • ключи (foreign key)
    • отношения: one to …, many to...
  • JDBC 1
    • зачем нужен
    • основные интерфейсы
    • получение данных в приложении из БД
    • обновление и удаление данных в приложении из БДа
  • JDBC 2
    • транзакции
    • уровни изоляции
    • обработка checker исключений
  • ORM. Hibernate
    • нестыковки объектной и реляционной моделей данных
    • ORM (Hibernate), JPA
    • архитектура hibernate
    • конфигурация, основные аннотации
    • получение данных в приложении из БД
    • обновление и удаление данных в приложении из БД
    • Hibernate VS JDBC
  • Hibernate. OneTo…, ManyTo..
    • отношения (работа с коллекциями)
  • Наследование Entity for ORM
    • одна таблица для каждого класса
    • одна таблица для каждого класса с предками
    • единая таблица для всей иерархии классов
    • одна таблица для каждого класса с использованием соединений (join)
  • Итоговый проект
    • hash for passwords

Spring + Spring Boot

  • IoC, DI. Spring. Components. Beans
    • почему Spring стал де-факто стандартом отрасли (преимущества)
    • принципы IoC и DI
    • бин
    • контекст (ApplicationContext)
    • AOP
  • Spring modules general. Spring Web MVC
    • core (beans, core, context, SpEL)
    • data access
    • testing
    • web
    • integration
    • web mvc
  • Проектирование REST API
    • оперирование ресурсами, а не методами
    • http методы
    • http коды ответов
    • ошибки
    • запрос коллекции
    • запрос количества объектов в коллекции
    • запрос объекта коллекции
    • добавление данных в коллекцию
    • редактирование
    • удаление
    • д.з. спроектировать 2-ранговый REST API
  • App controller-service-dao
    • иерархия контекстов
    • servlet config
    • контроллер - прием запроса
    • сервис - бизнес логика
    • dao - хранение состояния
  • Spring ORM. @Transaction
    • абстракция “транзакция”
    • декларативные транзакции
    • transaction propagation
    • преимущества ORM + Spring
    • настройка hibernate SessionFactory
    • live coding example
  • Spring Test. AOP (logging)
    • unit testing
    • integration testing
    • основные аннотации
    • TestContext
    • live coding example (тестирование API-метода или пары методов)
    • spring commons logging bridge
  • Spring Security (memory, DB)
    • ключевые объекты контекста spring security: SecurityContextHolder, Authentication, UserDetails, GrantedAuthority
    • авторизация и аутентификация
    • OAuth2
    • сессии в памяти
    • сессии в БД
  • Spring Boot. Spring JPA
    • стартеры
    • автоконфигурация
    • встроенные tomcat
    • аннотации конфигурации
    • демонстрация spring data jpa (генерация запроса по названию метода в рантайме)

Особливості курсу

  • Заняття у невеликих групах
  • Постійна підтримка ментора
  • Великі курсові проєкти для портфоліо
  • Можливі додаткові факультативи за запитом студентів
  • Диплом після закінчення навчання
  • Допомога у працевлаштуванні (складання резюме, навички самопрезентації, тестові співбесіди)

Викладачі курсу

  • Василий Малик - Team lead команди програмістів JavaRush
  • Антон Кашников - Java-програміст JavaRush, Java-ментор
  • Роман Прищепа - Java-розробник, імплементує нові можливості у продукт, вдосконалює вміст курсу
Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
16 годин
Рівень
Для досвідчених
Мова навчання
Ukrainian
Вартість
98 USD за курс
Вечірні заняттяВидається диплом/сертифікатСупровід ментора
CyberBionic Systematics
  • 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
Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
14 годин
Рівень
Для досвідчених
Мова навчання
Ukrainian
Вартість
85 USD за курс
Вечірні заняттяВидається диплом/сертифікатСупровід ментора
CyberBionic Systematics
  • 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. Тренер-консультант

Більше інформації
Курс
Формат
Online
Початок навчання
Дата формується
Тривалість
220 годин
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
18 000 UAH за курс
Вечірні заняттяСупровід ментораРеальний проект у портфоліо
Code Space
  • Java
Подробиці

Перша частина курсу є базовою з основ мови програмування Java. У другій частині курсу ми заглибимося у вивчення Java Core та технологічного стеку Java SE.

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

Введення в програмування Java

  • Віртуальна машина, байт-код, JRE
  • Платформи та технології
  • Інструменти та утиліти JDK
  • Інсталяція JDK
  • Середовища розробки (IDE). Встановлення Intelliji IDEA
  • Структура простої консольної програми
  • Створення та виконання програми засобами Intelliji IDEA
  • Введення-виведення рядків
  • Положення за кодом Java

Цілі типи даних та арифметичні операції над ними

  • Поняття типу даних. Огляд типів даних у Java
  • Відмінність між примітивними та об'єктними типами
  • Подання знакових і беззнакових цілих чисел. Системи числення
  • Операції над цілими числами
  • Цілочисленні типи даних
  • Поняття змінної. Ідентифікатори
  • Поняття цілого літералу. Цілочисленні літерали

Речові типи даних та операції над ними

  • Подання знакових та беззнакових дійсних чисел
  • Речові типи даних
  • Речовий літерал
  • Операції над речовими змінними
  • Пріоритет операцій
  • Приведення типів даних

Оператори, що керують потоком виконання програми

  • Концепція блоку коду. Локальні змінні та область їх дії
  • Оголошення змінної як константи
  • Основний оператор if-else
  • Логічний тип даних (boolean). Логічні операції
  • Інші форми оператора if-else
  • Тернарна операція
  • Оператор switch. Ключові слова case та default
  • Оператори while, do-while
  • Оператори переходу break та continue. Мітки

Символьний та рядковий типи даних, операції над ними

  • Символьний тип даних (char)
  • Рядковий тип даних (String)
  • Основні операції з рядками
  • Незмінність рядків

Методи. Опис та виклик

  • Опис методу
  • Способи передачі даних метод
  • Виклик (звернення) методу
  • Поняття про навантаження методів
  • final-аргументи методів

Масиви

  • Опис одновимірного масиву. Поле length
  • Звернення до елементу масиву
  • Цикли for та for-each
  • Опис багатовимірних масивів
  • Рвані багатовимірні масиви
  • Клас Arrays
  • Типові операції з масивами
    • порівняння
    • пошук елемента
    • сортування

Типи даних та операції над ними

  • Примітивні типи даних, опис змінних
  • Операції над примітивними типами даних
  • Рядковий тип даних (String)
  • Основні операції з рядками

Методи. Опис та виклик

  • Опис методу
  • Способи передачі даних метод
  • Виклик (звернення) методу
  • Поняття про навантаження методів
  • final-аргументи методів

Масиви. Опис та обробка

  • Опис одновимірного масиву та робота з ним
  • Опис багатовимірного масиву та робота з ним
  • Рвані багатовимірні масиви
  • Операції з масивами: порівняння, пошук елемента, сортування. Клас Arrays

Використання принципів ООП: інкапсуляція

  • Опис класів. Поля та методи
  • Модифікатори доступу
  • Оголошення об'єктів. Оператор new
  • Конструктори. Конструктори з параметрами
  • Виклик одного конструктора з іншого
  • Літерал null
  • Ключове слово this
  • Знищення об'єктів

Секції ініціалізації та пакети

  • Специфікатор final
  • Специфікатор static
  • Способи ініціалізації полів класу
  • Статичні секції ініціалізації
  • Логічні секції ініціалізації
  • Порядок виконання секцій ініціалізації
  • Java пакети. Організація пакетів
  • Створення пакета
  • Імпорт пакетів
  • Запаковані архіви. Утиліта jar

Використання принципів ООП: успадкування та поліморфізм

  • Основи наслідування. Доступ до членів класу та успадкування
  • Ключове слово super
  • Створення багаторівневої ієрархії
  • Перевизначення методів
  • Заміщення методів, затінення полів
  • Ланцюжки конструкторів
  • Поліморфізм. Раннє та пізнє зв'язування
  • Перетворення та приведення типів
  • Оператор встановлення
  • Клас Object та його методи

Абстрактні класи та інтерфейси

  • Абстрактні класи
  • Абстрактні методи
  • Інтерфейси. Визначення інтерфейсів
  • Реалізація інтерфейсів
  • Використання інтерфейсів
  • Функціональні інтерфейси
  • Статичні методи та методи за змовчуванням в інтерфейсах

Перерахування та класи-обгортки

  • Основні поняття про перерахування
  • Методи values() та valuesOf()
  • Клас Enum
  • Класи-оьгортки для примітивних типів даних
  • Пул об'єктних оболонок
  • Автоупаковка та методи
  • Автоупаковка та розпакування у виразах
  • Автоупаковка та розпакування логічних та символьних значень

Винятки

  • Поняття винятку. Типи винятків
  • Використання блоків try та catch
  • Множинні оператори catch
  • Вкладені оператори try
  • Контрольовані та неконтрольовані винятки
  • Стек обробників. Поширення неперехоплених винятків
  • Інструкції throws та throw
  • Ключове слово finally. Обробник завершення
  • Винятки, створювані програмістом

Вкладені класи

  • Поняття та класифікація вкладених класів
  • Створення екземплярів статичних та не статичних вкладених класів
  • Доступ до членів об'ємного класу
  • Вкладені класи та віртуальна машина
  • Локальні внутрішні класи
  • Анонімні внутрішні класи
  • Застосування анонімних класів з прикладу сортування. Інтерфейс компаратора
  • Внутрішні класи та множинне спадкування

Узагальнення (generics)

  • Оголошення та використання узагальнених класів
  • Оголошення та використання узагальнених методів
  • Обмежені generics
  • Узагальнення та віртуальна машина
  • Обмеження використання generics
  • Підстановочні типи (wildcards). Ключові слова extends i super в типах підстановки.
  • Необмежені підстановки

Колекції

  • Загальне поняття про фреймворк колекцій. Інтерфейс Collection
  • Ітератори. Інтерфейси Iterable та Iterator
  • Інтерфейс List. Класи ArrayList та LinkedList, їх порівняльна характеристика
  • Інтерфейс Queue та Deque. Класи, що реалізують ці інтерфейси
  • Інтерфейс Set. Класи TreeSet та HashSet
  • Інтерфейс Map
  • Інтерфейс MapEntry

Сервісні класи

  • Клас Math
  • Довга арифметика
  • Випадкові числа
  • Клас System
  • Клас Properties
  • Форматування та локалі
  • Дата та час
  • Числа та коррень
  • Клас Runtime

Багатопоточність

  • Поняття багатопоточності. Способи створення потоків
  • Прості методи класу Thread: start(), join(), sleep(), yield()
  • Стан потоків
  • Планувальник потоків. Пріоритети
  • Переривання потоку. Метод interrupt()
  • Потоки-демони
  • Пул потоків
  • Синхронізація потоків. Модифікатор volatile. Синхронізовані методи та блоки
  • Клас ReentrantLock
  • Атомарні змінні
  • Методи wait(), notify(), notifyAll()
  • Тупики
  • Основні синхронізатори. Класи Semaphore, CountDownLatch
  • Синхронізація колекцій
  • Fork-Join Framework

Потоки введення-виведення. Робота з файлами

  • Поняття потоку введення-виводу
  • Байтові та символьні потоки
  • Основні класи потоків
  • Клас RandomAccessFile
  • Принципи обробки помилок введення-виведення
  • Блок try з автоматичним керуванням ресурсами
  • Клас File. Операції із файлами

Серіалізація

  • Поняття серіалізації
  • Серіалізація складних об'єктів
  • Серіалізація та успадкування
  • Модифікатор transient
  • Нестандартна серіалізація
  • Інтерфейс Externizable

Завантаження класів. Рефлексія

  • Процес завантаження класів
  • Основні завантажувачі
  • Ієрархія завантажувачів класів
  • Основні можливості Reflection
  • Клас Class
  • Отримання інформації про клас
  • Динамічне завантаження класів та створення екземплярів
  • Використання рефлексії для отримання вказників на методи
  • Динамічний виклик методів
  • Використання рефлексії для доступу до приватних членів

Анотації

  • Поняття інструкції
  • Зумовлені інструкції Java SE
  • Створення власних анотацій

Нові функції Java 8

  • Лямбда-вирази
  • Посилання на метод, оператор
  • Потоки (Streams)
  • Новий Date/Time API

Основні прийоми проєктування

  • Основні принципи проєктування (SOLID)
  • Відносини is_a та has_a
  • Спадкування, агрегація, композиція, делегування
  • Основні показники якості коду: coupling, cohesion
  • Угоди JavaBeansNaming
  • Архітектурний шаблон MVC
  • Поняття про патерни проєктування
  • Патерни Singleton, Builder, Strategy, Decorator, Observer, Factory

Інструмент складання Java проєкту

  • Основи Maven
  • Основи тестування. Фреймворк JUnit 4
  • Інструкції, що підтримуються в JUnit 4
  • Клас Assert
  • Створення тестових випадків

Системи логування

  • Призначення логування
  • Основні компоненти фреймворки Log4j
  • Компонент "Logger" та його рівні
  • Компонент "Appender" та особливості його використання
  • Компонент Layout та його застосування
  • Конфігурування системи логування

Проєкт

  • Видача та пояснення завдань
  • Консультування
  • Захист проєкту

Попередні вимоги

  • Впевнений користувач ПК
  • Англійська мова - на рівні читання та розуміння базових технічних тестів

Особливості курсу

  • Зручний формат
  • Відмінний тренер
  • Записи уроків
  • Можлива оплата частинами
  • Якісна програма
  • Високі шанси працевлаштування після проходження курсу

Викладачі курсу

Любов Іванова - External Trainer at EPAM Systems

Більше інформації
Курс
Формат
Online
Початок навчання
Будь-який момент
Тривалість
2 тижнів
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
1 475 UAH за курс
Гнучкий графікВидається диплом/сертифікатСупровід ментора
Foxminded
  • 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

Більше інформації
Курс
Формат
Online
Початок навчання
Будь-який момент
Тривалість
8 місяців
Рівень
Для досвідчених
Мова навчання
Ukrainian
Вартість
5 000 UAH за місяць
Гнучкий графікВидається диплом/сертифікатСупровід ментора
Foxminded
  • Android
  • Java
Подробиці

Курс розробки на Android – для тих, хто хоче відносно швидко отримати спеціальність, яка зараз користується дуже великим попитом. Ви навчитеся створювати додатки на платформі Android.

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

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 at Raiffeisen Bank
  • Данило Яйло - Android Developer at CML Team
  • Максим Громов - Android Developer at Transcenda
  • Сергій Хоменко - Senior Android Developer at Leo gaming
  • Іван Карпюк - Senior Android Developer at Impressit
  • Роман Криволапов - 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
Більше інформації
Курс
Формат
Online
Початок навчання
Будь-який момент
Тривалість
3 тижнів
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
1 225 UAH за курс
Гнучкий графікВидається диплом/сертифікатСупровід ментора
Foxminded
  • Java
Подробиці

Ми вирішили зробити свій власний курс, в якому можна обмежитися тільки тим, що абсолютно необхідно. Зробити стартову сходинку для наших майбутніх студентів максимально простою і зрозумілою. Після проходження курсу Java Start – ти володієш основами мови Java, які дозволять тобі розвиватися далі самостійно або на наших курсах Java менторинг.

Про курс

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

Урок 1: Вступ та налаштування

Теорія

  • Про що і навіщо курс, що в ньому буде, чого не буде
  • Про JDK
  • Змінні та операції

Практика

  • Встановлення JDK та Eclipse
  • Пишемо Hello World
  • Використовуємо:
    • Змінні
    • Арифметичні дії
    • Конкатенація (зклеювання строк)

Урок 2. Класи та об'єкти

Теорія

  • Що таке:
    • Класи
    • Об'єкти
    • Поля
    • Методи
  • Як з ними працювати:
    • Порівняння
    • Друк

Практика

  • Створення класу:
    • Поля
    • Методи
    • Екземпляри класів (об'єкти)
  • Робота з класами:
    • Порівняння об'єктів
    • Друк об'єктів

Урок 3. Основи ООП

Теорія

  • Наслідування
  • Поліморфізм
  • Перевизначення методів
  • Перевантаження методів
  • Абстрактні методи
  • Інтерфейси

Практика

  • Створити:
    • ієрархію наслідування
    • в цій ієрархії створити поліморфну поведінку
    • перевизначений метод
    • перевантаження методів
    • абстрактний метод та імплементувати його
    • інтерфейс та інплементувати його

Урок 4. Колекції та керуючі конструкції

Теорія

  • Масиви
  • Колекції
  • Цикли
  • Умовні оператори

Практика

  • Створити:
    • масив
    • колекцію
    • цикл обходу по масиву та колекції
    • додати до логіки програми умовний оператор

Результат

Після проходження курсу Java Start - ти володієш основами мови Java, які дозволяють тобі розвиватися далі самостійно або на наших курсах Java менторинг.

Попередні вимоги

  • Вільне володіння комп'ютером
  • Вміння читати англійський текст

Особливості курсу

  • Онлайн-курс
  • Необмежений доступ до відео-лекцій і завдань
  • Допомога в чаті Slack
  • Сертифікат по завершенню курсу

Автори курсу

Сергій Немчинський - 20 років у програмуванні, з них 15 років у Java Certified Scrum Master

Більше інформації
Відеокурс / Платформа
Формат
Online
Початок навчання
Будь-який момент
Тривалість
3 місяців
Рівень
Для початківців
Мова навчання
English
Вартість
безкоштовно
Гнучкий графік
EPAM
  • Java
Подробиці

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

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

Introduction to IT

  • Version Control with Git
  • Basics of computer science and Java programming

Java Basics

Advanced Java

  • Collections
  • Java Lambdas and Streams
  • I/O streams
  • Multithreading

Software Development Approaches

  • Maven
  • XML
  • Testing
  • Design Patterns and Principles

Introduction to Database

  • Database and SQL
  • JDBC and DAO

Introduction to Web Development

  • HTML and CSS
  • JSON
  • Web-applications on Servlets and JSP

Introduction to Spring Framework

Як долучитися до програми?

  1. Зареєструватися та заповнити профіль
  2. За бажанням пройти тест на визначення рівня англійської мови
  3. Посилання на курс буде надіслано на твою пошту
  4. Починай вивчати курс

Що необхідно для успішного навчання:

  • Рекомендований рівень володіння англійської - Pre-Intermediate (A2) і вище
  • Наполегливість і винахідливість у вирішені нестандартних завдань
  • Знання в області ООП/Java, алгоритмів та структур даних стануть тобі в нагоді
  • Досвід роботи з базами даних, побудови логіки, веб-програмування допоможе легше опанувати курс

Особливості курсу

  • Курс можна проходити з будь-якої точки світу, в комфортному темпі та у зручний час
  • Це можливість створити міцну основу для подальшого розвитку в Java
  • В програмі курсу актуальний та якісний контент, що відповідає поточному стану IT-індустрії
  • Програма розроблена експертами EPAM з різних країн та дає корисні практичні знання для твоєї майбутньої кар'єри
  • Це безкоштовна можливість для всіх бажаючих навчатися у кращих наставників та експертів EPAM
Більше інформації
Курс
Формат
Online
Початок навчання
06.02.2024
Тривалість
70 годин
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
14 885 UAH за курс
Вечірні заняттяВидається диплом/сертифікатРеальний проект у портфоліо
QALight
  • Java
Подробиці

Курс для людей, які хочуть опанувати професію Java Developer з нуля. На заняттях ви опануєте необхідну теоретичну базу та застосуєте отримані навички у проєкті, які стануть основою для портфоліо.

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

JAVA SE

Вступ до програмування мовою Java

  • Історія розвитку та версії Java.
  • Практичне використання Java.
  • Переваги та недоліки.
  • Особливості роботи розробників у різних компаніях України (outsource, outstaff, product).

Налаштування робочого оточення

  • Java Development Kit (JDK).
  • Integrated Development Environment (IDE).
  • Maven.
  • Tomcat.
  • DataBases (PostgreSQL, H2, MongoDB).

Основи синтаксису Java

  • Ключові слова в Java.
  • Об’єкти в Java.
  • Клас Object.
  • Поля та методи.
  • Ідентифікатори.
  • Інтерфейс і абстрактний клас.
  • Рефлексія в Java.

Об'єктно-орієнтоване програмування (ООП)

  • Різні підходи до програмування (ООП, АОП, функціональне тощо).
  • ООП – основи, принципи.
  • Інкапсуляція.
  • Спадкування.
  • Поліморфізм.

Робота з різними типами даних

  • Примітивні типи даних.
  • Посилальні типи даних.
  • Null і static об'єкти.
  • Константи.
  • Явне та неявне перетворення даних.
  • Конвертація типів даних.

Тестування

  • Поняття Quality Assurance.
  • Навіщо розробникам тестування?
  • Автоматизація тестування.
  • Різновиди тестування.
  • Test Driven Development (TDD).

Знайомство з GIT

  • SVN vs GIT.
  • Поняття "репозиторій".
  • Що таке "commit".
  • Популярні команди під час роботи з GIT.
  • Розгалуження і паралельна розробка.
  • Злиття гілок, в т.ч. за допомогою MergeRequest.
  • Вирішення конфліктів.

Робота з рядками

  • Склад рядка.
  • String, StringBuffer, StringBuilder.
  • Регулярні вирази.
  • Формат рядків.
  • Використання утиліт для роботи з рядками, в т.ч. зовнішніх бібліотек.

Масиви та колекції

  • Поняття списку об'єктів.
  • Масиви.
  • Колекції – інтерфейс Collection.
  • Відмінності реалізацій колекцій (List, Set, Queue).
  • Сортування колекцій.
  • Map в Java.

Оператори в Java

  • Арифметичні.
  • Логічні.
  • Побітові.
  • Пріоритет операторів.

Логічні умови та розгалуження

  • if, if-else, if-else-if.
  • switch.
  • тернарний оператор.

Циклічні операції

  • Поняття циклічності
  • for
  • while
  • do-while
  • for-each

Обробка помилок

  • Error vs Exception.
  • Checked і Unchecked виключення.
  • Ієрархія помилок і виключень.
  • Синтаксис при роботі з виключеннями.
  • Створення власних виключень та їхня обробка.

Робота з потоками введення/виведення інформації

  • InputStream/OutputStream.
  • Reader/Writer.
  • Робота з файловою системою.
  • Робота з різними типами файлів (XML, JSON).

Лямбда-вирази

  • Функціональний інтерфейс.
  • Синтаксис лямбда-виразів.
  • Термінальні лямбда-вирази.
  • Switch з використанням лямбда в Java 11.

Stream в Java

  • Поняття Stream API.
  • Способи створення Stream.
  • Методи Stream (конвеєрні, термінальні).
  • Фільтрація та сортування під час роботи зі стрімами.

Паралельне виконання завдань, багатопоточність

  • Поняття "потік".
  • Клас Thread та інтерфейс Runable.
  • Потоки-демони.
  • Застосування багатопоточності.

Анотації в Java

  • Поняття "анотація".
  • Створення власних анотацій.
  • Застосування анотацій.

Створення і запуск файлу проекту

  • Експорт та імпорт проекту.
  • Можливості конвертації.
  • Запуск з параметрами.

JAVA EE

Maven як інструмент збірки проекту

  • Maven vs Ant.
  • Maven репозиторій.
  • Структура Maven проекту.
  • Робота з pom.xml.
  • Перетворення раніше створеного web-додатка в maven-проект.
  • Налаштування збірки проекту.
  • Запуск різних команд Maven, збірка проекту.

Дебаг і рефакторинг

  • Поняття рефакторинга.
  • Дебаг в IDE.
  • Breakpoint, Breakpoint with condition, Expression.

Графічний інтерфейс в Java

  • Бібліотеки Abstract Window Toolkit (AWT) і Swing.
  • JavaFX.
  • Модулі для відтворення графічного інтерфейсу (WindowBuilder, Scene Builder…).

Система управління баз даних (СУБД)

  • СУБД – історія розвитку, різновиди, застосування, рейтинги.
  • Реляційні і noSql бази даних.
  • СУБД Oracle/PostgreSQL/H2 (virtual).
  • Data Definition Language (DDL).
  • Structured Query Language (SQL).
  • CRUD операції.
  • Dump і Backup баз даних.
  • Зв’язування таблиць (Primary Key і Foreign Key).
  • Запити з підзапитами.
  • Різновиди команди JOIN.
  • Команди GROUP і ORDER BY.

Робота з БД в Java

  • Connection для різних БД.
  • Data Access Object (DAO).
  • Statement і PreparedStatement, передача аргументів на запит.
  • Створення DAO-класів для роботи з таблицями БД.

Основи web-серверних технологій

  • Що таке сервер.
  • Налаштування сервера на прикладі Tomcat.
  • URI та його складові (URL, URN).
  • Протокол HTTP.
  • Налаштування пошуку.
  • Метод, заголовок, тіло запиту.

HTML, JSP, основи верстки

  • Теги, атрибути, стилі.
  • Таблиці стилів (CSS).
  • Динамічні Web-сторінки.
  • HTML vs JSP.

Jsoup для роботи з web-контентом

  • Клієнт-сервіс на прикладі додатка PostMan.
  • Document Object Model (DOM).
  • Jsoup як інструмент для роботи з web-контентом.
  • Створення запитів використовуючи різні методи HTTP.
  • Обробка даних відповіді сервера.

Selenium для роботи і тестування web-контенту

  • Поняття web-драйвера.
  • Налагодження та запуск web-драйвера на прикладі ChromeDriver.
  • Виконання команд як емуляція дій користувача.
  • Запуск драйвера в фоновому режимі.
  • Selenium як інструмент для створення ботів.

Web-розробка на Java

  • MVC модель.
  • Структура web-додатка.
  • Що таке Servlet.
  • Створення простого web-додатка.
  • Запуск web-додатка за допомогою IDE.
  • Процедура розгляду заяв про клієнта, в тому числі з різними параметрами.
  • Взаємодія з сервісами й утилітами в додатку.
  • HttpFilter для обробки запитів.
  • Використання зовнішніх бібліотек.
  • Експорт проекту в war-файл.
  • Деплой проекту.
  • Запуск та налаштування сервера для забезпечення доступу із зовнішніх ресурсів.

FRAMEWORKS IN JAVA

Hibernate-framework

  • Object-Relational Mapping (ORM) в Java.
  • Hibernate як “де-факто” стандарт реалізації JPA.
  • Налаштування Hibernate за допомогою XML-файла.
  • Налаштування Hibernate за допомогою properties-файлу.
  • HQL для створення запитів.
  • Створення Native SQL запитів.

Spring-framework

  • Inversion of Control (IoC).
  • Dependency Injection як реалізація IoC.
  • Поняття Bean як компонент контексту Spring.
  • Конфігурація Spring за допомогою XML-файла.
  • Конфігурація Spring за допомогою анотацій.
  • Профілі в Spring.
  • Різновиди фреймворку Spring.
  • Spring-boot для створення web-додатків.
  • Spring-data як альтернатива Hibernate.
  • Міграції даних.
  • Swagger API.
  • Тестування з використанням контексту Spring.
  • Тестування з використанням Mock-об’єктів.
  • Spring-security.

Створення фінального проєкту

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

Особливості курсу

  • Заняття проходять у вечірній час по вівторкам і четвергам
  • Практика на реальних проєктах
  • Підтримка під час та після навчання
  • Свідоцтво про закінчення курсу

Викладачі курсу

Олександр Ігнатенко - Senior Java back-end developer у Credit Agricole Bank.

Більше інформації
Курс
Формат
Online
Початок навчання
Будь-який момент
Тривалість
6 місяців
Рівень
Для дітей
Мова навчання
Ukrainian
Вартість
1 600 UAH за місяць
Гнучкий графікВидається диплом/сертифікатСупровід ментора
Optima Academy
  • Java
Подробиці

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

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

Теми:

  • Вступ до Java. Інтегроване середовище розробки й налагодження Java-програм
  • Основні типи даних Java
  • Базові конструкції Java
  • Об'єкти і класи
  • Інтерфейси й вкладені класи
  • Багатопотокове програмування
  • Система введення-виведення
  • Програмування графіки

Процес навчання

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

  • Тривалість заняття - 45 хвилин
  • Інтенсивність заняття 2-3 заняття на тиждень

Після проходження курсу учасники матимуть

  • Знання й навички ефективно застосовувати базові засоби мови програмування Java для подання основних структур даних і реалізації алгоритмів їх обробки
  • Сертифікат Академії прикладної програмної інженерії Оптіма

Що необхідно для навчання?

Ноутбук або комп'ютер, під'єднаний до інтернету та оснащений необхідними гарнітурами (колонки або навушники, вебкамера, мікрофон).

Особливості курсу

  • Авторська система освітніх курсів
  • Унікальна команда тренерів
  • Турбота й індивідуальний підхід
  • Офіційний сертифікат
  • Навчання в будь-який час і з будь-якого місця
  • Комфортний освітній процес. Заняття проходять у мінігрупах
  • Засновник - перша в Україні дистанційна школа "Оптіма"
  • Корисні та потрібні знання. Максимум практики в кожному занятті

Викладачі курсу

Марія Васильєва - Викладачка у сфері інженерії програмного забезпечення з досвідом роботи 6 років

Більше інформації

Сторінки

Читайте нас в Telegram, щоб не пропустити анонси нових курсів.