Профессиональное программирование на JAVA

Информация о курсе:


Стоимость: 2 500 грн в месяц

Длительность курса: 3 месяца (67,5 часов)
Вечерние группы: 27 занятий х 2,5 часа
Субботние группы: 15 занятий х 4,5 часа
Возможно обучение On-line

Дата начала курса:


15 ноября 18:45-21:15 
(понедельник, среда)

Записаться в группу

 

Если вы уже изучали язык программирования Java в университете, коммерческих учебных заведениях, на онлайн-курсах или самостоятельно, ознакомьтесь с программой курса «Основы программирования на JAVA» и убедитесь, что вы владеете 70-100% учебного материала. В этом случае рекомендуем вам продолжить обучение на курсе «Профессиональное программирование на JAVA». Если же у вас возникают какие-то сомнения, звоните, наши тренеры помогут вам сориентироваться при выборе необходимого курса.

Обработка исключительных ситуаций.

  • Модели обработки ошибок. Генерирование исключительной ситуации. Классификация исключительных ситуаций. Конструкция try-catch-finally. Использование ключевых слов throws и throw. Создание пользовательских исключений.

Интерфейсы.

  • Понятие интерфейса. Свойства интерфейсов.
  • Применение интерфейсов для проектирования системы. Паттерны Callback и Delegate.

Клонирование объектов.

  • Глобальный суперкласс Object и его методы.
  • Глубокое и поверхностное копирование объектов. Интерфейс Cloneable.
  • Инициализация объектов с переменным числом атрибутов. Паттерн Builder.

Работа с файлами.

  • Пакет java.io. Класс File. Работа с файлами и каталогами. Чтение данных из файла и запись данных в файл. Классы FileReader, FileWriter, BufferedReader и BufferedWriter.
  • Исключительные ситуации, возникающие при обращении к файлам.
  • Интерфейсы FileFilter, FilenameFilter.

Сериализация объектов.

  • Области применения сериализации. Интерфейсы Serializable и Externalizable.

Обобщенное программирование (Generics).

  • Понятие и назначение обобщенного программирования. Обобщенный класс. Экземпляр обобщенного типа. Обобщенные методы. Ограничения обобщений. Наследование обобщенных типов.

Аннотации в Java.

  • Использование встроенных аннотаций. Создание собственных аннотаций.

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

  • Основы работы с базами данных. Понятие и назначение баз данных (БД) и систем управления базами данных (СУБД). Наиболее используемые СУБД. Реляционные базы данных. Основные понятия теории баз данных. Проектирование баз данных. Типы данных, хранимых в БД. Нормальные формы. Обеспечение целостности данных.
  • Основы языка структурированных запросов SQL. Назначение и использование SQL. Создание базы данных (оператор CREATE). Модификация данных (операторы INSERT и UPDATE). Выборка данных (оператор SELECT). Выборка из нескольких таблиц. Выборка с условием (оператор WHERE). Сортировка данных (оператор ORDER BY). Группировка данных (оператор GROUP BY).
  • Запросы на соединение, объединение, вычитание таблиц.
  • Пакет java.sql. Установка соединения с базой данных. Классы Connection, Statement и ResultSet.
  • Паттерн проектирования DAO. Работа с базами данных с использованием технологии ORM.

Коллекции.

  • Классы коллекций. Интерфейсы коллекций. Интерфейс Collection. Интерфейсы Iterator и Iterable.
  • Интерфейсы List, Set, SortedSet, Queue. Классы Vector, Stack, ArrayList, LinkedList, HashSet, TreeSet.
  • Интерфейсы Comparable и Comparator.
  • Интерфейс Map.

Журналирование (логгирование) работы программы.

  • Пакет java.util.logging
  • Пакет log4j

Потоки.

  • Понятие многопоточного приложения. Класс Thread. Интерфейс Runnable и особенности его реализации. Приоритеты потоков. Методы join(). Прерывание работы потока. Синхронизация потоков. Синхронизированные методы. Понятие монитора. Ключевое слово synchronized и его формы.
  • Интерфейс Callable. Блокирующие очереди.
  • Артефакты пакета java.util.concurrent : Semaphore, CountDownLatch, Executor, Barrier, Exchanger
  • Атомарные переменные.

Основы XML.

Структура XML-документа. Синтаксический анализ XML-документов. Проверка достоверности XML-документов. XPath. Пространство имен. Потоковые синтаксические анализаторы. Формирование XML-документов. Маршаллизация и демаршаллизация.

Основы web-программирования.

  • Создание сервлетов.
  • Установка сервера приложений Tomcat. Создание сервлета. Основы технологии Java Server Pages(JSP). Custom Tag, JNDI.
  • Создание веб-сервисов.
  • Понятие веб-сервиса. Технологии создания веб-сервисов. Описание веб-сервиса с помощью WSDL. Использование веб-сервиса в клиентском приложении.

Практические задания курса: Разработка итогового проекта - многопоточного параметризованного статистического симулятора.