Разработка Java-приложений
с использованием
Spring Framework
Дополнительная профессиональная программа
профессиональной переподготовки
Цифровой кафедры НИЯУ МИФИ.
Бесплатно для студентов* московской площадки и филиалов НИЯУ МИФИ

*Обучение могут проходить студенты бакалавриата (начиная со 2-го курса) и специалитета (начиная с 3-го курса) и магистратуры

О программе

Вы научитесь проектировать серверные части и базы данных клиент-серверных приложений.
В рамках реализации собственного проекта Вы примите участие в разработке REST API клиент-серверного приложения. Важной отличительной особенностью данной программы является использование востребованных в современной Java-разработке средств и инструментов (Spring Framework, Hibernate, PostgreSQL), без знания которых невозможно развиваться в разработке на Java.

Преимущества программы

  • Обучение проходит в комфортном темпе - легко совмещать с основной учебой.
  • Бесплатно для студентов* московской площадки и филиалов НИЯУ МИФИ.
  • Все слушатели, прошедшие обучение, получат диплом о профессиональной переподготовке НИЯУ МИФИ.
  • Все обучение проходит в дистанционном формате под руководством специалистов НИЯУ МИФИ.
  • *Обучение могут проходить студенты бакалавриата (начиная со 2-го курса) и специалитета (начиная с 3-го курса) и магистратуры
На нашей программе вы
  • овладеете навыками программирования на языке Java
  • получите опыт применения фреймворка Spring Framework при разработке приложений на Java
  • рассмотрите организацию BigData-систем на основе технологий Hadoop и Spark, а также изучите обработку и хранение потока данных
  • изучите облачные сервисы (IaaS, PaaS, SaaS) и технологию контейнеризации приложений Docker
Авторы курса
  • Свадковский Игорь
    Витальевич
    Кандидат физ.-мат. наук, доцент отделения ядерной физики и технологий офиса образовательных программ НИЯУ МИФИ. Java-разработчик с 2018 года. Участник проекта по разработке информационно-аналитической системы и системы документооборота по заказу Министерства обороны РФ.
  • Радыгин Виктор
    Юрьевич
    И.о. начальника департамента цифрового развития НИЯУ МИФИ, доцент, к.т.н., ИФТЭБ НИЯУ МИФИ. Разработчик веб-ориентированных информационных систем с 2000 года. С 2015 года руководит разработкой веб-ориентированных сервисов и информационных систем в НИЯУ МИФИ.
  • Куприянов Дмитрий
    Юрьевич
    Ведущий разработчик веб-ориентированных информационных систем в Управлении информационно-методического обеспечения образовательного процесса НИЯУ МИФИ, доцент, к.т.н. ИФТЭБ НИЯУ МИФИ. Разработчик веб-ориентированных информационных систем с 1999 года.
Содержание программы
Программа реализуется в дистанционном формате
Основы языка программирования JAVA.
1. Обзор языка Java.
Основная идея языка. Преимущества/недостатки Java. JDK/JRE/JVM/JIT. Виды ссылок. Сборщик мусора. Hеаp и Stack памяти в Java. Примитивные типы данных. Классы-обёртки. Автоупаковка и автораспаковка. Приведение типов. Integer pool.Символьные строки. String pool. Массивы в Java. Виды условных операторов. Конструкция switch-case. Виды циклов.
2. Объектно-ориентированное программирование.
Поля, методы и конструкторы класса. Виды классов. Модификаторы доступа. Наследование, инкапсуляция, полиморфизм. Иерархия классов. Ассоциация, агрегация, композиция. Принципы SOLID. Раннее и позднее связывание. Перегрузка / переопределение методов. Основные ключевые слова. Класс Object и его методы. Правила переопределения метода equals(). Контракт между методами equals() и hashCode(). Понятие коллизии. Правила переопределения метода hashcode().
3. Абстрактные и вложенные классы. Интерфейсы.
Абстрактные Абстрактные классы, их отличия от обычных. Конструкторы абстрактных классов. Виды вложенных классов. Локальные и анонимные классы - особенности применения. Интерфейсы, их отличия от абстрактных классов. Наследование интерфейсов. Default методы интерфейсов. Проблема ромбовидного наследования для интерфейсов. Перечисления. Блоки инициализации - виды и особенности применения.
4. Исключения.
Понятие исключения. Иерархия исключений. Виды исключений. Принудительное выбрасывание исключений. Ключевое слово throws. Создание пользовательских исключений. Механизм обработки исключений - try-catch-finally. Порядок обработки исключений. Mеханизм try-with-resources - особенности использования.
5. Сериализация и копирование.
Понятия сериализации и десериализации, причины использования. Интерфейс Serializable. Стандартное поведение сериализации. Правила сериализации полей классов. Собственный протокол сериализации. Клонирование объектов. Поверхностное и глубокое клонирования.
6. Обобщенные типы данных.
Обобщённые типы данных в Java (дженерики). Причины и особенности использования. Сырые типы. Виды wildcards. Принцип PECS.
7. Java Collections Framework.
Понятие «коллекции». Интерфейс java.util.Collection. Иерархия коллекций. Класс java.util.Collections. Виды итераторов: fail-safe и fail-fast поведения. Интерфейсы List и Set. Внутренние устройства ArrayList, LinkedList, HashSet, LinkedHashSet и TreeSet, сложность основных операций для них. Интерфейсы Queue и Deque. Интерфейс Map, его основные реализации. Внутренние устройства HashMap, LinkedHashMap и TreeMap, сложность основных операций для них.
8. Функциональные интерфейсы. Лямбда-выражения.
Принцип РЕС8.Понятие функционального интерфейса. Аннотация @FunctionalInterface. Виды функциональных интерфейсов. Способы инстанцирования функциональных интерфейсов. Лямбда-выражения. Правила обращения к полям класса и переменным методов из лямбда-выражений. Ссылка на метод.
9. Stream API.
Понятие стрима, особенности использования. Интерфейс Stream. Сравнение стримов с коллекциями. Ленивая инициализация стрима. Виды стримов. Способы создания стримов. Промежуточные и терминальные операции со стримами, примеры и особенности использования. Класс java.util. stream.Collections.
Регистрация скоро откроется!
По всем вопросам обращайтесь на электронную почту education@mephi.ru
Поделитесь с друзьями!
Связаться с нами:
E-mail: ismc@mephi.ru