Ближайшая дата курса: узнать дату

Следующая дата курса:

Язык программирования Java (Java SE10). Часть 1. Базовый курс

Java – наиболее популярный в наши дни язык программирования среди объектно-ориентированных языков. С помощью Java создаются серверное ПО, многочисленные прикладные программы, любые веб-сайты, многие игры и проч. Приложения, разработанные на Java, четко и корректно работают на компьютерах с любой архитектурой.

В языке Java базовый синтаксис позаимствован у С/С++, поэтому наш курс будет полезен и новичкам, и программистам С++, стремящимся повысить уровень своей квалификации.

Изучение теоретического материала и проведение практических работ проводится на платформе Java Standard Edition 10 (Java SE10), в среде разработки IntelliJ IDEA.

В течение курса Вы научитесь работать в интегрированной среде разработки IntelliJ IDEA Community Edition, сможете самостоятельно создавать на Java приложения командной строки, изучите в полном объеме элементы и конструкции языка Java SE 10 и овладеете возможностями платформы JDK.

Обратите внимание: у программистов Java заработная плата на 30-40% превышает, среднее предложение на рынке труда. Если Вам нужна высокооплачиваемая работа с перспективами карьерного роста, это Ваш курс! Обратитесь к нам и запишитесь на обучение сейчас!

Во время обучения Вы узнаете:

Введение в Java, обзор платформ и технологий. Функциональные связи:

  • Введение в Java. История создания. Преимущества;
  • Java Standard Edition 10. Новые возможности.

2 ак.ч.

Синтаксис Java:

  • Словарь Java;
  • Примитивные и объектные типы в Java;
  • Операторы;
  • Управляющие структуры;
  • История развития языка, нововведения от JDK 1.5 до JDK 1.10.

2 ак.ч.

Объектно-ориентированное программирование (OOP) в Java:

  • Процедурное и объектно-ориентированное программирование. Инкапсуляция;
  • Объекты и объектные переменные. Сборка мусора;
  • Пакеты. Уровни видимости классов. Импорт классов;
  • Введение в IntelliJ IDEA;
  • Документирование кода в Java. Javadoc.

3 ак.ч.

Наследование и полиморфизм, базовый класс Object:

  • Построение иерархии классов. Диаграммы классов UML;
  • Методы. Модификаторы. Передача примитивных типов в методы;
  • Локальные и глобальные переменные;
  • Модификаторы доступа и правила видимости. Зарезервированное слово this;
  • Передача ссылочных типов в методы;
  • Наследование. Суперклассы и подклассы. Переопределение методов;
  • Наследование и правила видимости. Зарезервированное слово super;
  • Статическое и динамическое связывание методов. Полиморфизм;
  • Базовый класс Object;
  • Конструкторы. Зарезервированные слова super и this;
  • Блоки инициализации;
  • Удаление неиспользуемых объектов и метод finalize;
  • Проблема деструкторов для сложно устроенных объектов;
  • Перегрузка методов;
  • Правила совместимости ссылочных типов. Приведение и проверка типов;
  • Рефакторинг;
  • Реверс-инжиниринг.

3 ак.ч.

Интерфейсы в Java:

  • Проблемы множественного наследования классов. Интерфейсы;
  • Отличия интерфейсов от классов. Наследование интерфейсов;
  • Пример использования интерфейсов;
  • Композиция как альтернатива множественному наследованию.

3 ак.ч.

Встроенные классы:

  • Вложенные (Nested) классы;
  • Внутренние (Inner) классы;
  • Локальные (local) классы;
  • Анонимные (безымянные) классы и обработчики событий.

2 ак.ч.

Исключения в Java:

  • Система исключения в Java;
  • try-with-resources: нововведения JDK 1.7;
  • Assertions или проверка утверждений.

3 ак.ч.

Основные пакеты и интерфейсы Java:

  • Обзор основных пакетов Java;
  • Массивы в Java;
  • Классы String, StringBuffer, StringBuilder, StringTokenizer;
  • Классы ввода-вывода. Файловый ввод-вывод.

3 ак.ч.

Generics или настраиваемые классы в Java:

  • Понимание настраиваемых классов или Generics;
  • Написание кода, поддерживающего Generics.

2 ак.ч.

Коллекции в Java:

  • Массивы;
  • Интерфейс Collections;
  • Практическое применение Generics.

4 ак.ч.

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

  • Понимание аннотаций;
  • Создание собственных аннотаций;
  • Обработка аннотаций.

1 ак.ч.

Улучшения языка java, появившиеся в JDK1.5 — 1.1:

  • Автоматическая упаковка и распаковка;
  • Перечислимый тип enum;
  • Улучшенные языковые конструкции (циклы for);
  • Аргументы переменной длины;
  • Изменения в интерфейсах;
  • Класс Optional;
  • Литералы коллекций;
  • Изменения в try-with-resources.

2 ак.ч.

Лямбда-выражения, функциональные интерфейсы и Streaming API в JDK 1.8:

  • Понимание лямбда-выражений в Java, функциональные интерфейсы;
  • Новый Streaming API;
  • Практическое применение.

2 ак.ч.

Загрузчики классов в Java и API Reflection:

  • Порядок действий VM при загрузке класса;
  • Способы загрузки классов;
  • Создание собственного загрузчика классов;
  • Пример создания загрузчика зашифрованных классов;
  • Загрузка классов методом forName (…);
  • Создание объектов класса Class;
  • Исследование объекта;
  • Класс java.lang.reflect.Method. Пример приложения;
  • Компилирование исходного текста из приложения Java. Пример;
  • Выгрузка и Перезагрузка Классов. Пример приложения;
  • Приложение RunItReload , выгружающее и загружающее классы;
  • Загрузка классов через Сеть. Класс URLClassLoader.

2 ак.ч.

Сериализация Java-объектов:

  • Что такое Сериализация и где применяется;
  • Как сериализация может использоваться в RMI;
  • Автоматическая сериализация. Интерфейс Serilizable. Пример;
  • Сериализация с применением интерфейса Externalizable. Пример;
  • Восстановления объекта и Reflection. Пример приложения;
  • Управление сериализацией посредством transient. Пример приложения;
  • Альтернатива Externalizable – методы writeObject() и readObject();
  • Сериализация static членов классов;
  • Глубокое клонирование объектов через сериализацию. Пример с Reflection.

2 ак.ч.

Введение в многопоточное программирование:

  • Введение в многопоточную архитектуру;
  • Базовые классы для работы с потоками – класс Thread, интерфейс Runnable;
  • Синхронизация, Блокировки.

2 ак.ч.

Введение в сетевое программирование:

  • Введение в сетевое программирование, сокеты;
  • Классы Soket и ServerSocket, написание простого сетевого клиента и сервера.

1 ак.ч.

Сборка Java программ: Ant, Maven и Gradle:

Сборка Java-проектов при помощи средств Ant, Maven и Gradle.

1 ак.ч.

40 ак.ч.

Стоимость обучения: 16 790р.

Даты

Время

Цена

Место занятий

Преподаватель

Найденов Павел Васильевич

Павел — программист с более чем 10-летним стажем разработки ПО. За годы работы он занимался созданием игр, участвовал в разработке новаторских стартапов и написанием энтерпрайз приложений в крупных российских IT компаниях. Пишет код на Java, Scala, Python, Ruby и обучит Вас тонкостям, стоящим за экосистемами этих языков. Павел имеет богатый практический опыт использования различных баз данных, включая реляционные MySQL и PostgreSQL, а также ряд NoSQL систем: Elasticsearch, Kafka, Redis, ClickHouse, ZooKeeper, SophiaDB. Он научит Вас профилировать и ускорять запросы, а также выбирать схемы хранения данных под различные задачи.

Павел расскажет Вам, какие навыки чаще всего требуются для успешного прохождения собеседований, а какие — для успешной работы в IT компании. На занятиях Вы, кроме всего прочего, узнаете:

  • как автоматизировать процессы и отдать всю скучную, однообразную работу компьютерам
  • как в кратчайшие сроки написать рабочий прототип приложения и успешно поддерживать его в будущем
  • как проектировать масштабируемый сервис, способный выдержать высокую нагрузку, используя только Open Source решения
  • как ускорить выполнение кода и оптимизировать потребление памяти

После успешного прохождения образовательных программ, предлагаемых МГТУ им. Н. Э Баумана, вы получите один из следующих документов:

серт

Сертификат (на русском языке с дублированием информации на английском языке) установленного образца, в котором будут указаны полное наименование программы и количество часов обучения.

удо

Удостоверение о повышении квалификации (на русском языке), в котором будут указаны полное наименование программы и количество часов обучения.

* Удостоверение о повышении квалификации выдается слушателям, которые прослушали 24 и более академических часов по программе повышения квалификации.

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

Во время обучения Вы узнаете:

Введение в Java, обзор платформ и технологий. Функциональные связи:

  • Введение в Java. История создания. Преимущества;
  • Java Standard Edition 10. Новые возможности.

2 ак.ч.

Синтаксис Java:

  • Словарь Java;
  • Примитивные и объектные типы в Java;
  • Операторы;
  • Управляющие структуры;
  • История развития языка, нововведения от JDK 1.5 до JDK 1.10.

2 ак.ч.

Объектно-ориентированное программирование (OOP) в Java:

  • Процедурное и объектно-ориентированное программирование. Инкапсуляция;
  • Объекты и объектные переменные. Сборка мусора;
  • Пакеты. Уровни видимости классов. Импорт классов;
  • Введение в IntelliJ IDEA;
  • Документирование кода в Java. Javadoc.

3 ак.ч.

Наследование и полиморфизм, базовый класс Object:

  • Построение иерархии классов. Диаграммы классов UML;
  • Методы. Модификаторы. Передача примитивных типов в методы;
  • Локальные и глобальные переменные;
  • Модификаторы доступа и правила видимости. Зарезервированное слово this;
  • Передача ссылочных типов в методы;
  • Наследование. Суперклассы и подклассы. Переопределение методов;
  • Наследование и правила видимости. Зарезервированное слово super;
  • Статическое и динамическое связывание методов. Полиморфизм;
  • Базовый класс Object;
  • Конструкторы. Зарезервированные слова super и this;
  • Блоки инициализации;
  • Удаление неиспользуемых объектов и метод finalize;
  • Проблема деструкторов для сложно устроенных объектов;
  • Перегрузка методов;
  • Правила совместимости ссылочных типов. Приведение и проверка типов;
  • Рефакторинг;
  • Реверс-инжиниринг.

3 ак.ч.

Интерфейсы в Java:

  • Проблемы множественного наследования классов. Интерфейсы;
  • Отличия интерфейсов от классов. Наследование интерфейсов;
  • Пример использования интерфейсов;
  • Композиция как альтернатива множественному наследованию.

3 ак.ч.

Встроенные классы:

  • Вложенные (Nested) классы;
  • Внутренние (Inner) классы;
  • Локальные (local) классы;
  • Анонимные (безымянные) классы и обработчики событий.

2 ак.ч.

Исключения в Java:

  • Система исключения в Java;
  • try-with-resources: нововведения JDK 1.7;
  • Assertions или проверка утверждений.

3 ак.ч.

Основные пакеты и интерфейсы Java:

  • Обзор основных пакетов Java;
  • Массивы в Java;
  • Классы String, StringBuffer, StringBuilder, StringTokenizer;
  • Классы ввода-вывода. Файловый ввод-вывод.

3 ак.ч.

Generics или настраиваемые классы в Java:

  • Понимание настраиваемых классов или Generics;
  • Написание кода, поддерживающего Generics.

2 ак.ч.

Коллекции в Java:

  • Массивы;
  • Интерфейс Collections;
  • Практическое применение Generics.

4 ак.ч.

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

  • Понимание аннотаций;
  • Создание собственных аннотаций;
  • Обработка аннотаций.

1 ак.ч.

Улучшения языка java, появившиеся в JDK1.5 — 1.1:

  • Автоматическая упаковка и распаковка;
  • Перечислимый тип enum;
  • Улучшенные языковые конструкции (циклы for);
  • Аргументы переменной длины;
  • Изменения в интерфейсах;
  • Класс Optional;
  • Литералы коллекций;
  • Изменения в try-with-resources.

2 ак.ч.

Лямбда-выражения, функциональные интерфейсы и Streaming API в JDK 1.8:

  • Понимание лямбда-выражений в Java, функциональные интерфейсы;
  • Новый Streaming API;
  • Практическое применение.

2 ак.ч.

Загрузчики классов в Java и API Reflection:

  • Порядок действий VM при загрузке класса;
  • Способы загрузки классов;
  • Создание собственного загрузчика классов;
  • Пример создания загрузчика зашифрованных классов;
  • Загрузка классов методом forName (…);
  • Создание объектов класса Class;
  • Исследование объекта;
  • Класс java.lang.reflect.Method. Пример приложения;
  • Компилирование исходного текста из приложения Java. Пример;
  • Выгрузка и Перезагрузка Классов. Пример приложения;
  • Приложение RunItReload , выгружающее и загружающее классы;
  • Загрузка классов через Сеть. Класс URLClassLoader.

2 ак.ч.

Сериализация Java-объектов:

  • Что такое Сериализация и где применяется;
  • Как сериализация может использоваться в RMI;
  • Автоматическая сериализация. Интерфейс Serilizable. Пример;
  • Сериализация с применением интерфейса Externalizable. Пример;
  • Восстановления объекта и Reflection. Пример приложения;
  • Управление сериализацией посредством transient. Пример приложения;
  • Альтернатива Externalizable – методы writeObject() и readObject();
  • Сериализация static членов классов;
  • Глубокое клонирование объектов через сериализацию. Пример с Reflection.

2 ак.ч.

Введение в многопоточное программирование:

  • Введение в многопоточную архитектуру;
  • Базовые классы для работы с потоками – класс Thread, интерфейс Runnable;
  • Синхронизация, Блокировки.

2 ак.ч.

Введение в сетевое программирование:

  • Введение в сетевое программирование, сокеты;
  • Классы Soket и ServerSocket, написание простого сетевого клиента и сервера.

1 ак.ч.

Сборка Java программ: Ant, Maven и Gradle:

Сборка Java-проектов при помощи средств Ant, Maven и Gradle.

1 ак.ч.

40 ак.ч.

Стоимость обучения: 16 790р.

+ Расписание

Даты

Время

Цена

Место занятий

Преподаватель

+ Преподаватели

Найденов Павел Васильевич

Павел — программист с более чем 10-летним стажем разработки ПО. За годы работы он занимался созданием игр, участвовал в разработке новаторских стартапов и написанием энтерпрайз приложений в крупных российских IT компаниях. Пишет код на Java, Scala, Python, Ruby и обучит Вас тонкостям, стоящим за экосистемами этих языков. Павел имеет богатый практический опыт использования различных баз данных, включая реляционные MySQL и PostgreSQL, а также ряд NoSQL систем: Elasticsearch, Kafka, Redis, ClickHouse, ZooKeeper, SophiaDB. Он научит Вас профилировать и ускорять запросы, а также выбирать схемы хранения данных под различные задачи.

Павел расскажет Вам, какие навыки чаще всего требуются для успешного прохождения собеседований, а какие — для успешной работы в IT компании. На занятиях Вы, кроме всего прочего, узнаете:

  • как автоматизировать процессы и отдать всю скучную, однообразную работу компьютерам
  • как в кратчайшие сроки написать рабочий прототип приложения и успешно поддерживать его в будущем
  • как проектировать масштабируемый сервис, способный выдержать высокую нагрузку, используя только Open Source решения
  • как ускорить выполнение кода и оптимизировать потребление памяти
+ Документы об окончании

После успешного прохождения образовательных программ, предлагаемых МГТУ им. Н. Э Баумана, вы получите один из следующих документов:

серт

Сертификат (на русском языке с дублированием информации на английском языке) установленного образца, в котором будут указаны полное наименование программы и количество часов обучения.

удо

Удостоверение о повышении квалификации (на русском языке), в котором будут указаны полное наименование программы и количество часов обучения.

* Удостоверение о повышении квалификации выдается слушателям, которые прослушали 24 и более академических часов по программе повышения квалификации.

+ Отзывы

Программа курса разработана с учетом профстандартов Министерства труда и социальной защиты РФ.