Курс JAVA-розробник

  • Online
  • Для начинающих
  • Java
Образовательный центр: Main Academy
Формат:Курс
Язык обучения:Ukrainian
Длительность обучения:5 месяцев
Начало курса:Дата формируется
Стоимость обучения:22 000 UAH за курс

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

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

Базові принципи і конструкції Java

Початок програмування на Java

  • Специфікація Java
  • Крос-платформна розробка
  • Віртуальні машини
  • Огляд IDE
  • Створення першої консольної програми
  • Створення Java-додатків за допомогою JDK Tools

Типи даних в Java

  • Розберемо все примітивні типи даних:
    • знакові
    • беззнакові
    • бінарні
    • цілочисельні
    • строкові і т.д.
  • Змінні та ідентифікатори
  • Логічні та арифметичні оператори для роботи з даними
  • Розглянемо інкремент і декремент
  • Розглянемо Bit Shift і Bitwise Operators і багато іншого

Керівні конструкції Java

  • Умовні переходи if-then і if-then-else
  • Цикли while, do-while і for
  • Конструкція switch
  • Використання goto, break, continue, exit program

Масиви і основні операції над масивами

  • Одновимірні і багатовимірні масиви.
  • Довжина масиву
  • Робота з масивами і елементом масиву
  • Зміна величини масиву
  • The Arrays Class
  • Операції над масивами: копіювання, equal check, пошук, сортування

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

Робота з класами та об'єктами

  • Огляд: Class Declarations
  • Class Fields and Methods
  • Модифікатори доступу
  • Encapsulation
  • Створення об'єктів
  • Використання null і this

Оголошення методів і робота з ними

  • Methods Declaration
  • Passing Arguments to a Method
  • Methods with Variable Arguments
  • Overloading Methods
  • final Modifier for Method Arguments

Конструктори в класах

  • Оголошення конструкторів
  • Конструктори за замовчуванням
  • Перезавантаження конструкторів
  • Виклики конструкторів

Статичні елементи в Java, використання полів і методів

  • The static Keyword
  • The static Fields
  • The static final Fields
  • The static Methods
  • The static Methods Restrictions
  • Using static Fields and Methods

Секції ініціалізації

  • Class Fields Initialization
  • Non-static Initialization Block
  • Static Initialization Block
  • Order of Initialization Block Execution
  • Initialization of final Variable

Робота з пакетами, правильна збірка jar

  • The Package
  • Package Import
  • Adding Class to Package
  • Static Import
  • Package Organization
  • The jar Utility
  • Executable jars

Суть наслідування і поліморфізму

  • The Inheritance
  • Inheritance and "is-a" Relationship
  • Method Overriding
  • Fields hiding
  • Class Object
  • Object Methods: toString(), equals(), hashCode(), e.t.c.
  • The "super" Keyword
  • Covariant Return Types
  • Constructors Chaining
  • Initialization Order and Inheritance
  • Polymorphism. Early Binding & Late Binding
  • Type Cast and Conversion
  • The instanceof Keyword
  • Objects Cloning
  • final Class and final Methods
  • The protected Access Modifier

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

  • Abstract Classes
  • Abstract Methods
  • Interfaces
  • Interfaces and Multiple Inheritance
  • Interface Comparable and Comparator

Робота з рядками використовуючи класи, введення / виведення

  • The String Class
  • Operations with Strings
  • Immutable String in Java
  • The StringBuilder and StringBuffer
  • String Pool in Java
  • The StringTokenizer Class
  • The Regular Expressions in Java
  • The Scanner Class

Продвинуте об'єктно-орієнтоване програмування в Java. Робота з класом

Суть Wrapper класів (класи обгортки) для примітивних типів

  • Wrapper Classes
  • Autoboxing and Unboxing
  • Wrapper Classes are Immutable
  • Caching Integer Objects

Exceptions, ієрархія винятків в Java. Затвердження

  • The Exceptions. Java Exceptions hierarchy
  • Checked and Unchecked Exceptions
  • The try-catch-finally Block
  • Multiple catch Blocks
  • The throw and throws Keywords
  • Call Stack and Exception Propagation
  • Rules of Exceptions in Method Overriding
  • Creating Exception Classes
  • Assertions

Nested класи, вкладені класи і JVM. Nested класи і множинне наслідування

  • The Nested Classes Classification
  • Creating Instances of Static and Non-static Nested Classes
  • Inner Class Access to Outer Class Fields and Methods
  • The Nested Classes and JVM
  • Local Inner Classes
  • Anonymous Inner Classes
  • Using Anonymous Class for Array Sorting. Interface Comparator
  • Inner Classes and Multiple Inheritance

Перерахування та операції з ними

  • The Enums and Operations with it
  • Enum as Type
  • Enums Methods Overriding
  • Enums Restrictions

Суть Generics, використання Wildcards, extends and super

  • The Generics
  • Declaring and Using Generic Types
  • Declaring and Using Generic Methods
  • Bounded Type Parameters
  • Generics and JVM
  • Generic Arguments in Methods
  • Restrictions on Generics
  • Generic and Inheritance
  • Wildcards, extends and super Keywords

Колекції, відображення і ітератори

  • Java Collection Framework. Interfaces
  • The Collection Interface
  • The Iterators
  • The List Interface
  • The Queue and Deque Interfaces
  • The Set Interface
  • The Map Interface
  • The Collections Class

Суть дозволу перевантаження. Поняття Cast, Boxing-Unboxing, Varargs

  • The Overload Resolution
  • The Overload Resolution: Type or Class
  • The Overload Resolution: Type Cast or Boxing-Unboxing
  • The Overload Resolution and Varargs
  • Examples of Overload Resolution

Професійне програмування на Java: багатопотоковість, БД, патерни, MVC, networking

Багатопотокове програмування, паралельні колекції і фреймворк Fork-Join

  • Introduction to Concurrent Programming
  • Creating Threads
  • Important Methods in the Thread Class
  • The States of a Thread
  • The Thread Scheduler. Thread Priority
  • Thread Interruption. The interrupt() Method
  • Threads Pool
  • The Daemon Threads
  • Thread Synchronization
  • The volatile Keyword
  • Synchronized Blocks
  • Synchronized Methods
  • The ReentrantLock Class
  • Atomic Variables
  • The Wait/Notify Mechanism
  • Deadlocks
  • Semaphore
  • CountDownLatch
  • Concurrent Collections
  • The Fork-Join Framework

Основні сервісні класи Java Core

  • The Math Class
  • BigInteger and BigDecimal Classes
  • Random Numbers
  • The System Class
  • The Properties Class
  • Creating a Locale
  • Date and Time
  • Numbers and Currencies
  • The Runtime Class

MVC архітектура. Шаблони проєктування

  • Object-Oriented Concepts
  • Is-a Relationship and Has-a Relationship
  • Inheritance, Aggregation, Composition and Association
  • Key Indicators of Code Quality: Coupling, Cohesion
  • JavaBeans Conventions
  • Design Patterns
  • Singleton, Builder, Strategy, Decorator, Observer, Factory Patterns
  • MVC

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

  • The Сoncept of Input-Output Streams
  • Byte Streams and Character Streams
  • The main I/O Stream Classes
  • The RandomAccessFile Class
  • Principles of Handling IO Errors
  • A try-catch with Resources
  • The "File" Class. File Operations

Поняття серіалізації. Серіалізація складних об'єктів. Інтерфейс Externalizable

  • Java - Serialization
  • Serializing an Object
  • The transient Modifier
  • Complex Objects Serialization
  • Serialization with Inheritance
  • Custom Serialization in Java
  • Java Externalizable Interface

Основи баз даних. Поняття про SQL і підключення використовуючи JDBC коннектор

  • An Introduction to Relational Data Bases
  • An Introduction to SQL
  • The CRUD Operations
  • The JDBC
  • The DriverManager and Connection
  • The ResultSet
  • PreparedStatement
  • The Database MetaData
  • The DatabaseTransactions
  • Connecting to a database project in IntelliJ IDEA

Основи створення GUI інтерфейсу на Java

  • An Introduction to Swing
  • Swing - Controls
  • Event Handling
  • Layout Managers
  • Creation and Use Menu
  • Dialog Windows. Standard and Custom

Завантаження класів. Основні можливості Reflection. Динамічний виклик методів

  • Loading Classes
  • Class Loaders In Java
  • Class Loaders Runtime Hierarchy
  • The Java Reflection
  • The "Class" Class
  • Retrieving Class Objects
  • Discovering Class Members
  • Dynamic invocation of methods
  • Using Java Reflection for Access to Private Members

Поняття анотації. @Override

  • Annotations Basics
  • Annotation Types Used by the Java SE
  • Custom Annotations in Java

Відмінності між Java SE 8 i Java SE 9

  • Lambda вираження
  • функціональні інтерфейси
  • Відмінності в методах
  • Потоки
  • Нові типи даних
  • Статичні методи

Java - Networking | проксі класи

  • Основи TCP / IP Networking
  • Сокети Java и Server Socket's
  • Основи UDP Networking і використання UDP DatagramSocket
  • Робота з URLConnection і InetAddress
  • Клас Proxy, типові використання проксі-об'єктів

Професійна розробка програмного забезпечення на Java

Життєвий цикл розробки ПЗ. Інструменти збірки Java. Основи Maven

  • The Software Development Life Cycle
  • Java Build Tools, Maven Essentials

Прийоми тестування. Основи роботи JUnit 4. Створення тестових завдань в JUnit

  • The Unit Testing, JUnit Essentials
  • Basic Annotation Supported in JUnit 4
  • Assert Statements Supported in JUnit 4
  • Creating a JUnit Tests

Робота з розподіленою системою керування версіями Git

  • Creating GitHub repository
  • Committing your changes
  • Reverting
  • Pushing to a remote repository
  • Pulling from a remote repository
  • Resolving Conflicts
  • Branches

Фундаментальні принципи Garbage Collection

  • Java Garbage Collection Basics
  • Eligible Objects for Garbage Collection
  • Object Finalization
  • The Resurrected Objects
  • The Weak Reference

Рівні захисту в Java. Security Manager і модель пісочниці

  • Basic Security Architecture
  • Security Manager
  • The Java Sandbox

Виконання персонального навчального проєкту

Робота над практичним завданням по створенню індивідуального проєкту

  • Обробка ТЗ
  • Консультації по проєкту (2 год.)
  • Самостійна робота над проектом під керівництвом тренера (24 год.)

Захист проєкту

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

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

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

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

  • Євгеній Лазарєв - Java Software Engineer
  • Сергій Цапенко - Senior Java Developer
  • Олександр Ігнатенко - Java Developer
  • Сергій Гусар - Java Developer
  • Станіслав Шумейко - Java Software Engineer

Категории курса

Читайте нас в Telegram, чтобы не пропустить анонсы новых курсов.

Похожие курсы

Учебный центр
Mate academy
Формат
Online
Начало обучения
Будь-який момент
Длительность
8 месяцев
Уровень
Для начинающих
Язык обучения
Ukrainian
Стоимость
54 740 UAH за курс
Учебный центр
EPAM
Формат
Online
Начало обучения
16.12.2024
Длительность
15 недель
Уровень
Для начинающих
Язык обучения
English
Стоимость
безкоштовно
Учебный центр
QALight
Формат
Online
Начало обучения
24.09.2025
Длительность
70 часов
Уровень
Для начинающих
Язык обучения
Ukrainian
Стоимость
14 885 UAH за курс
Учебный центр
Levelup
Формат
Online
Начало обучения
03.09.2025
Длительность
30 недель
Уровень
Для начинающих
Язык обучения
Ukrainian
Стоимость
уточняйте