Опис курсу:
Базовий курс Java призначений для студентів, які хочуть навчитися програмуванню на Java з нуля. В ході уроків ви навчитеся розробці та налаштування додатків, познайомитесь із основними елементами технології та конструкціями мови Java Standard Edition. На курсі ви освоїте основи web-програмування і дізнаєтеся про мережевих можливостях Java для початківців. Під керівництвом викладача ви вивчите основи програмування на Java, які допоможуть самостійно написати і представити програмний проект.Після вивчення курсу Ви зможете:
- Розробляти, проводити налагодження додатків і впроваджувати аплікації в рамках платформи JavaSE.
- Використовувати основні елементи технології та конструкції мови JavaSE, архітектурні та проектувальні прийоми в рамках платформи.
- Перейти на розширений курс навчання.
Програма курсу:
- Загальна характеристика мови Java
- Історія мови Java
- Байт-код
- Віртуальна машина Java (JVM)
- Трансляція, інтерпретація і компіляція
- JIT-компіляція
- JDK і його структура
- Команди JDK: javac, java, appletviewer, jar (en10), їх використання і параметри
- Пошук та завантаження класів
- Створення і запуск першої програми на Java
- Вихід з програми і завершення її роботи
- Використання IDE Eclipse / NetBeans / Intellij IDEA для створення і виконання програм
- Типи даних і основні операції з ними
- Алфавіт мови
- Коментарі
- Ключові слова
- Типи даних: прості (примітивні) і по посиланню
- Ідентифікатори, вибір імен ідентифікаторів
- Змінні і константи
- Оголошення і ініціалізація змінних
- Область видимості і час життя змінних
- Оператори
- Операції: арифметичні, привласнення, відносини і логічні
- Перетворення і приведення числових типів
- Пріоритет операцій
- Використання круглих дужок
- Потік управління
- Складовою оператор (блок)
- Умовний оператор і його види
- Оператор switch
- Цикли: for, while, do while
- Нескінченні цикли
- Переривання потоку керування, мітки
- Оператор goto і причини чому його не слід застосовувати
- Масиви
- Оголошення і ініціалізація масивів, в т.ч. анонімних
- Лінійні масиви
- Ітерація за елементами масиву
- Масиви і присвоєння
- Передача і повернення масивів в / з методів
- Копіювання масивів
- Клас Arrays: заповнення, порівняння елементів і їх сортування
- Пошук в масивах
- Багатовимірні масиви, «нерівні» масиви
- Методи: аргументи змінної довжини
- Параметри командного рядка
- Рядки
- Клас Незмінні об'єкти
- Зберігання рядків в пам'яті
- Основні операції класу String (створення, конкатенація, порівняння, пошук символів іподстрок в рядках і ін.). Перетворення простих типів даних
- Розбивка рядків: клас StringTokenizer. Змінні об'єкти: класи StringBuffer і StringBuilder
- Основні методи. StringBuffer vs StringBuilder
- Основи роботи з системою контролю версій
- Введення в ООП. Об'єкти і класи
- Поля і методи (визначення, синтаксис оголошення)
- Специфікатори доступу public і private
- Поля класів: ініціалізація явна і за замовчуванням, специфікатор final і константи
- Доступ до полів і методів
- Методи: параметри (посилання і прості типи) і ті, що повертаються, використання set і get- методів, перезавантаження методів, правила перезавантаження
- Об'єктна модель. Основні положення: абстрагування, інкапсуляція, модульність, ієрархія
- Діаграми класів UML.
- Об'єкти і класи. Об'єкти. Визначення (з прикладами). Стан. Поведінка.
- Конструктори: конструктори за умовчанням, виклик одного конструктора з іншого
- Блоки ініціалізації
- Статичні поля і методи: ініціалізація константи, статичні блоки ініціалізації. Використання this для доступу до членів класу
- Збір сміття та видалення об'єктів
- Відношення між об'єктами
- Залежності, їх різновиди
- Узагальнення
- Асоціації
- Реалізації
- Зв'язки, їх множинність
- Спадкування і поліморфізм
- Спадкування і поліморфізм як інструмент створення ПО. Суперклас і підкласи, ставлення узагальнення, спадкування в Java. Виклик конструкторів суперкласів, порядок викликів. Ключове слово super ()
- Перевизначення методів, правила перевизначення. Спадкування і статичні поля і методи класів. Абстрактні класи та методи, - поняття, виклик конструкторів, реалізація методів в субкласи
- Інтерфейси. «Множина» успадкування. Визначення та реалізація інтерфейсів. Розширення інтерфейсів. Композиція як альтернатива множинного спадкоємства
- Поліморфізм. Ієрархія наслідування
- Перетворення і приведення типів. Використання instanceof. Відмова від спадкування: термінальні (final) методи і класи. Включення як альтернатива множинного спадкоємства
- Пакети. Вкладеність пакетів. Повторне використання коду та пакети. Захист доступу.
- Імпорт: класів, статичних методів і полів
- Клас Object
- Глобальний суперклас Object
- Методи equals (), hashCode (), toString (), finalize (), clone () і ін
- Правила реалізації equals () і hashCode ()
- Інтерфейс Cloneable і його реалізація
- Клонування: поверхневе і глибоке
- Внутрішні класи
- Синтаксис оголошення
- Створення об'єктів внутрішніх класів
- Поля і методи внутрішніх класів
- Вкладеність внутрішніх класів і доступ до членів зовнішніх класів
- Посилання this у внутрішньому класі
- Доступ до полів і методів зовнішнього класу з внутрішнього
- Внутрішні класи і специфікатор доступу
- Вкладені інтерфейси
- Застосування внутрішніх класів
- Внутрішні локальні класи (Method-LocalInnerClasses)
- Анонімні внутрішні класи
- Вкладені (внутрішні статичні) класи (static nested classes)
- Створення примірників
- Доступ до примірника зовнішнього класу
- Доомпіляція програм з внутрішніми класами
- Перерахування
- Перерахування як класи. Методи values (), valueof (), name (), ordinal (). Константи, конструктори, методи і поля
- Перерахування і конструкція Імпорт членів перерахувань
- Робота з базами даних
- Основи побудови реляційних баз даних.
- SQL
- Нормальні фо форми. Запити SELECT, INSERT, UPDATE, DELETE
- JDBC
- Driver, Connection, Statement, ResultSet, PrepareStatement
- Обробка помилок і виключення
- Підходи до обробки помилок часу виконання
- Поняття виключення і виняткової ситуації
- Ієрархія класів винятків в Java
- Контрольовані (що перевіряються) і неконтрольовані (не перевіряв) виключення
- Генерація виняткової ситуації і оператор throws
- Оголошення контрольованих винятків, ключове слово throws
- throws і перезавантаження методів
- Перехоплення винятків
- Перехоплення «всіх» винятків
- Обробка винятків
- Повторна генерація викл юченій
- Блок finally: звільнення ресурсів
- Створення власної ієрархії виключень
- Реєстрація помилок, логування: логери, рівень логгер, рівень повідомлень, обробники (об'єкти підкласу java.util.logging.Handler)
- Приклад
- Система введення-виведення
- Ієрархія класів потокового введення-виведення
- Потоки введення-виведення, механізм роботи з потоками, ієрархія потокового введення-виведення
- Субклассов FilterOutputStream і FilterInputStream
- Байтові потоки
- Символьні потоки
- Клас File. Клас RandomAccessFile
- Серіалізация і десеріалізацію об'єктів: поняття, призначення, реалізація
- Приклад
- Desktop-додатки
- SWING, AWT. Приклад простого додатка з GUI
- Обробка подій
- Класи колекцій
- Поняття абстрактного типу даних (АТД)
- Структури даних: списки, стеки, безлічі, дерева, карти
- Обхід колекцій: інтерфейси Iteratorта і ListIterator, цикл «foreach»
- Компаратори
- Клас Collections: пошук і сортування елементів, заповнення, синхронізоване уявлення, незмінні уявлення та ін.
- Знайомство з XML
- Поняття формальної коректності і допустимості.
- Парсинг, зберігання стан об'єктів
- Приклади
- Поток
- Поняття потоку. Особливості паралельного виконання
- Потоки-демони
- Пріоритети потоків. Метод yield ()
- Стан потоку: створення потоків, -runnable і -runninig – потоки
- Класи BigInteger і BigDecimal. Основні операції
- Документування коду
- Включення коментарів
- Документування пакетів
- Дескриптори загального призначення
- Коментарі до класів, методам і полів
- Використання javadoc
- Універсальні типи
- Параметризрвані типи: класи і інтерфейси. Параметри типу
- Обмеження, накладені на параметризрвані типи: прості типи, інстанцірованія, суперклас, виняток.
- Параметризрвані типи і JVM
Мінімальні вимоги:
- Базове розуміння ООП
- Наявність власного ноутбуку для занять в аудиторіях
* Вказані знижки не сумуються з іншими діючими акціями та спеціальними пропозиціями. Якщо у Вас виникли питання, звертайтеся за консультацією до наших менеджерів!