Курс Разработка приложений на языке Java

В данном курсе Вы получите практический опыт построения вертикального решения для распределенного многоуровневого приложения с использованием case study подхода (сбор требований, анализ и проектирование), при помощи шаблона Model-View-Controller (MVC), реализуете тестирование с помощью JUnit, создадите графический пользовательский интерфейс (GUI), поддерживающий журналирование, реализуете подключения к базе данных с помощью JDBC, будете создавать как клиентские, так и серверные компоненты. Реализуете многопотоковость для обеспечения масштабируемости приложения и будете использовать Remote Method Invocation (RMI) для обеспечения коммуникации между объектами на клиентских и серверных компонентах.

Возможная должность: помощник разработчика, младший разработчик (junior)

Ориентировочная зарплата: 12 000 – 18 000 грн.

5

недель

40

академ часов

3800

гривен

Требования к слушателям:

  • Уметь разрабатывать приложения используя язык программирования Java
  • Понимать UML диаграммы
  • Понимать язык запросов SQL
  • Использовать технику объектно-ориентированного программирования.
  • Понимать принципы разработки графического пользовательского интерфейса
  • Знать основы TCP/IP
  • Понимать программы мониторинга предоставленные Java
  • Разрабатывать методологии тестирования и тестовых процедур

По окончании курса Вы будете уметь:

 

  • Использовать шаблон MVC для создания классов для повторного использования
  • Внедрять блочное тестирование используя Junit
  • Реализовывать программу с нуля для использования в коммерческих интранет приложениях
  • Разрабатывать классы для подключения программы к SQL базам данных используя базовые аспекты JDBC
  • Организовывать и настраивать генерацию GUI и перехвата событий для поддержки Java проектов
  • Внедрять logger API для генерации лог-сообщений в GUI
  • Создавать двухуровневые и трехуровневые приложения
  • Создавать многопоточный сервер
  • Создавать удалённые объекты используя Java RMI

 

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

1. Введение в современную разработку ПО — 1
  • API, UI, GUI
  • CI, NB
  • качество кода, рефакторинг, — калькулятор – Лабораторная работа (ЛР)
  • Unit tests, JUnit
  • Толстый-тонкий клиент, архитектура приложения
  • DOM модель для Веб-страницы, JS, задача с таблицей – ЛР
2. Введение в современную разработку ПО — 2
  • Разбор калькулятора и таблицы
  • API, UI, Manual tests, Auto tests
  • Метрики качества кода — CPD, PMD, FindBugs, MI
  • Применение метрик к калькулятору — ЛР
  • Проект Person — общие задачи трёхзвенной архитектуры приложения
  • Класс Object
  • Сериализация, десериализация — основы.
  • Запись/чтение списка Person в текстовый файл – ЛР
3. Введение в современную разработку ПО — 3
  • Работа с тестированием — Mocks and Stubs
  • Параметрическое тестирование
  • Калькулятор — тестирование с Mocks and Stubs — ЛР
  • Проект Person — w/r XML, Json, Yaml — ЛР
  • Интерфейс iDS — Save, Load — ЛР
  • HTML5 — ЛР, рисование на канвасе
4. Основы императивных языков программирования — 1, совр РПО — 4
  • Типы данных — int, real, others
  • Операции над типами
  • Выражение, приведение типов в выражении
  • Блок выражений, надстройки над блоком (if/else, switch, loops, try/catch, f()…)
  • Понятие БД.
  • SQL — DDL, DML, others — ЛР
  • java — рисование на форме — ЛР
  • калькулятор — интерфейс – ЛР
5. Обзор Java GUI — 1, Android
  • Разбор интерфейса калькулятора, MVC
  • Android — калькулятор — ЛР
  • Js — калькулятор — ЛР + UnitTests
  • SQL – обзор ЛР
  • Запись/чтение списка Person в БД – ЛР
6. Простые алгоритмы — 1, АТД — 1, императивные языки программирования — 2, сборка проекта — 1
  • треугольники, кубики — ЛР, Java, Js
  • Список — ЛР
  • Типы данных — размещение в памяти
  • Операции над типами — особенности
  • Блок выражений, надстройки над блоком (if/else, switch, loops, try/catch, f()…) — упор на циклы
  • Быстрый разбор ДЗ, доделать с дополнениями
  • Основные каталоги проекта
  • Сборка проекта при помощи Ant – ЛР
7. Паттерны проектирования — 1, простые алгоритмы — 2, АТД — 2
  • Обзор паттернов GoF
  • MVC
  • ORM
  • ORM для записи/чтения списка Person в БД — ЛР
  • Разбор
  • Декоратор для списка, другие…
8. Java GUI — 2
  • Обзор компонентов интерфейса
  • Проект «Шарики» — ЛР
  • Разбор рисование на форме
  • Рисование на форме, save/load в различные графические форматы – ЛР
9. Java GUI — 3, Многопоточность, императивные языки программирования — 3, сборка проекта — 2
  • Реальное внедрение MVC
  • Рисование на форме, MVC, фабрика конвертеров в графические форматы
  • Проект «Шарики», МТ — ЛР
  • Типы данных, объекты — GC
  • Операции над типами — конверторы через строку — ЛР
  • Блок выражений, надстройки над блоком (if/else, switch, loops, try/catch, f()…) — упор на функции
  • Java doc
  • Сборка проекта при помощи Maven – ЛР
10. Java GUI — 4, Паттерны проектирования — 2
  • Объектная рисовалка — ЛР
  • Обзор паттернов GoF с углублением
  • Связка ORM-DAO
  • Таблица, JTable, провайдер данных
  • GUI для проекта Person, MVC – ЛР