Данный курс предоставляет Вам возможность познакомиться с языком Java, одним из самых мощных и востребованных на сегодняшний день объектно-ориентированных языков программирования. В рамках данного курса, помимо основ языка и библиотеки, дается вводное изложение принципов ООП, знание которых необходимо для разработки на Java.
Входные требования
Курс рассчитан на всех, кто хочет стать востребованным специалистом по одной из самых мощных современных платформ программирования — Java. Уровень подготовки не важен. Вы можете начать обучение с нуля. Если Вы уже имеете знания в области программирования Java, Вы можете пройти анкетирование для определения уровня знаний и начать обучение с нужного вам блока.
Цели
заложить твердый фундамент знаний:
принципов ООП;
базовых средств языка;
механизмов абстракции;
наиболее широко используемых компонент стандартной библиотеки.
создать базу для дальнейшего самостоятельного развития.
Длительность курса 70 часов (при прохождении полного курса: 10 часов “Основы структурного программирования” + 10 часов “Основы ООП” + 35 часов “Язык программирования Java” + 15 часов “Стандартная библиотека Java”).
Формат обучения
Занятия проводятся в режиме online и подразделяются на лекционные (обзор теоретического материала) и семинарские (закрепление изученного материала на практике). Во время занятия Вы можете видеть преподавателя (трансляция видео с web-камеры), слышать (наушники / колонки), а также взаимодействовать с преподавателем и другими участниками занятий как посредством чата, так и посредством устного общения (микрофон, наушники / колонки). Практические занятия организованы таким образом, что все участники работают на общем, специально выделенном сервере. Благодаря такой организации, преподаватель имеет моментальный доступ ко всем рабочим директориям, что позволяет осуществлять проверку и исправление кода даже оперативнее, чем это происходило бы в компьютерном классе.
Программирование на языке Java (70 часов).
Блок 1. Основы структурного программирования (10 часов).
Занятие 1.1. Арифметика
Языки программирования высокого уровня, данные и алгоритмы, числовые типы данных, переменные, выражения, оператор присваивания, последовательное выполнение операторов.
Занятие 1.2. Логика
Логический тип данных, условные операторы, циклы, логические операции и выражения, булева алгебра.
Занятие 1.3. Контейнеры
Одномерные массивы, алгоритмы сортировки, строки.
Занятие 1.4. Подпрограммы
Повторное использование кода алгоритмов, процедуры и функции, передача параметров, рекурсия.
Блок 2. Основы объектно-ориентированного программирования (10 часов).
Занятие 2.1. Объекты
Сложные типы данных, структуры, динамические рекурсивные структуры.
Занятие 2.1. Инкапсуляция
Состояние и поведение объекта, поля и методы, модификаторы доступа.
Занятие 2.3. Наследование
Повторное использование кода данных, иерархии классов, агрегация и композиция.
Занятие 2.4. Полиморфизм
Переопределение методов, виртуальные методы, абстракция данных.
Блок 3. Язык программирования Java (35 часов)
Занятие 3.1. Основы синтаксиса
Лексемы, идентификаторы, зарезервированные слова, комментарии, структура программы, встроенные типы данных, литералы, переменные, выражения, операторы.
Занятие 3.2. Управление программами
- Логический тип данных, логические операции, блоки операторов, ветвления, циклы, операторы переходов, функции.
Занятие 3.3. Массивы
- Одномерные и многомерные массивы, итераторы, функции с переменным числом аргументов.
Занятие 3.4. Строки
- Символьные типы данных, Unicode, строки, операции над текстом.
Занятие 3.5. Исключения
Обработка ошибок в программировании, структурная обработка исключений, защищённые блоки, иерархия исключений, finally.
Занятие 3.6. Объектная модель
Классы и экземпляры, поля и методы, перегрузка методов, статические элементы, ссылка this, жизненный цикл объекта.
Занятие 3.7. Расширение классов
Подклассы и суперклассы, переопределение методов, ссылка super, финальные методы и классы, абстрактные методы и классы, интерфейсы, множественное наследование.
Занятие 3.8. Области определения классов
Пакеты, оператор импорта, модификаторы доступа, статические внутренние классы, внутренние интерфейсы, классы-члены, локальные классы, анонимные классы.
Занятие 3.9. Метапрограммирование.
Классы оболочки, автобоксинг, класс Class, отражение, аннотации.
Занятие 3.10. Обобщённое программирование
Перечисления, обобщения, шаблоны в обобщениях, стандартные коллекции.
Занятие 3.11. Функциональное программирование
Анонимные функции, функциональные интерфейсы, лямбда-выражения, ссылки на методы.
Занятие 3.12. Функциональные потоки
Текучие (fluent) интерфейсы, Stream API, операции над потоками, ленивая стратегия, параллелизм.
Занятие 3.13 Многозадачное программирование
Основы многозадачного программирования, процессы и потоки выполнения, класс Thread и интерфейс Runnable, жизненный цикл потока, управление потоками.
Занятие 3.14. Синхронизация
Проблемы синхронизации при совместном использовании ресурсов, семафоры и мониторы, synchronized, wait() и notify(), пакет java.util.concurrent.
Блок 4. Стандартная библиотека Java (10 часов)
Занятие 4.1. Обзор стандартной библиотеки
Обзор основных пакетов, пакет java.lang, пакет java.util.
Занятие 4.2. Время
API для работы с датой и временем, классы Date и Calendar, таймеры, новый java.time API.
Занятие 4.3. Ввод-вывод
Обзор пакета java.io, двоичные потоки, символьные потоки, работа с файловой системой, NIO и NIO.2.
Занятие 4.4. Сеть
Обзор пакета java.net, сокеты и датаграммы, средства HTTP, RMI.
Экзамен и заключение (5 часов)
Занятие 4.5. Экзамен
Занятие 4.6. Заключение
Преподаватель курса "программирование на языке Java":
Сырбачев Александр Владимирович. Работает в области разработки ПО с 1992 года, программирует на Java с момента появления технологии в 1995 году. 9-летний опыт преподавания в Красноярском государственном университете. Участие во многих крупных международных проектах на позициях от разработчика до руководителя проектов. Дополнительное увлечение - логическое программирование.
Технические требования
Сеть: скорость соединения от 2 Мб/с
Оборудование:
Микрофон - для общения,
наушники - чтобы не появлялось эффекта эха,
камера - если есть желание себя показать и общаться face to face.
К платформе можно подключиться с помощью мобильного устройства или планшета.
Акции: скидка 10% за приведенного друга.
Вы:
- научитесь устанавливать и конфигурировать программное окружение, необходимое для полноценной разработки на Java;
- познакомитесь с основами объектно-ориентированного анализа предметных областей;
- освоите методику построения объектно-ориентированных программ средствами Java;
- научитесь разрабатывать и тестировать приложения для решения широкого спектра задач.
Стоимость*:
28000 р. Полное обучение ( 1, 2, 3 и 4 блоки)
24 000 р. Для тех, кто знает основы программирования (2, 3 и 4-й блоки)
20 000 р. Базовый курс Java Junior (3 и 4 блок)
14 000 р. Знакомство с Java для знающих ООП (только 3-й блок)
* За 2 недели до начала обучения Вы сможете оценить свой уровень знаний, пройдя анкетирование у преподавателя курса.
|
|