Промышленное программирование на языке Java 2026: различия между версиями

Материал из Public ATP Wiki
Перейти к навигации Перейти к поиску
Новая страница: «= Общие сведения = * Семестр: 3 и 5 (2й и 3й курсы) * Форма контроля: диф. зачет [https://drive.google.com/drive/folders/1TUfesCtG7hbTq9W1YvK00RCk2sc14gyY?usp=sharing Вводное занятие ] == Важные ссылки == * [https://docs.google.com/spreadsheets/d/e/2PACX-1vQYkQIYpR4lpfl1-loT2U_Td5FncW4v6EzSm9naKknfAwt18VZYNiILNudeXw4Qim99RDMrpSfnlrvw/pubhtml?gid=530556398&single=true План ку...»
 
 
(не показано 9 промежуточных версий 3 участников)
Строка 12: Строка 12:
* [https://forms.gle/HBYKXZzYSLpex6gz9 Продление дедлайнов]
* [https://forms.gle/HBYKXZzYSLpex6gz9 Продление дедлайнов]


Deadline регистрации на курс: 15.09.25
Deadline регистрации на курс: 15.09.26
* [https://t.me/+OEx0KtMojLwwZmE6 Телеграм-чат курса]
* [https://t.me/+OEx0KtMojLwwZmE6 Телеграм-чат курса]


Строка 19: Строка 19:
** [https://inponomarev.ru/corejava Страница Ивана Пономарёва с видео и слайдами]
** [https://inponomarev.ru/corejava Страница Ивана Пономарёва с видео и слайдами]
* [https://gitlab.atp-fivt.org/courses-public/java-bak Коды и презентации семинаров]
* [https://gitlab.atp-fivt.org/courses-public/java-bak Коды и презентации семинаров]
= Команда курса =
Руководитель курса
* Александр Ермаков [https://t.me/AlexOEJ @AlexOEJ]
Лектор
* Иван Пономарёв [https://t.me/ivan_ponomarev @ivan_ponomarev]
Семинаристы
* Рубаненко Мария Александровна (группа англоязычных иностранцев) - [https://t.me/maryrubik @maryrubik]
* Беженарь Михаил Витальевич - [https://t.me/EntityResult @EntityResult]
* Куренков Владимир - [https://t.me/vvk101 @vvk101]
* Левин Алексей [https://t.me/]
Учебные ассистенты
* Цатурян Джулета Артуровна - [https://t.me/juletats @juletats]
* Гальперин Константин - [https://t.me/konstantin_galperin @konstantin_galperin]
* Иванов Дмитрий - [https://t.me/dfs_dima @dfs_dima]
* Беженарь Михаил Витальевич - [https://t.me/EntityResult @EntityResult]
* Блажко Рената — [https://t.me/RBlazhko @RBlazhko]
* Попова Виктория — [https://t.me/karmaxxkomao @karmaxxkoma]
* Аллабернов Керим — [https://t.me/allaberenov_k @allaberenov_k]
==== Контакт для организационных вопросов ====
* Куратор от кафедры [https://t.me/LianaTiholese @LianaTiholese]
* Крупильницкая Валерия (организатор) [https://t.me/valeriia_krup @valeriia_krup]
= Критерии получения оценки =
Зачет ставится по результатам работы в семестре.
== Домашние задания ==
Планируется 4 домашних задания. Проверка в форме code review. Исправления по code review можно делать в течение 1 месяца после 1-го комментария.
==== Дедлайны по домашкам ====
* За сдачу позже мягкого дедлайна -50%
* Позже жёсткого можно сдавать с оценкой 25% максимум.
Под сдачей понимается: код лежит в gitlab-репозитории и сделан merge request из ветки с задачей в ветку master.
{|  class="wikitable"
|-
! Домашка
! Мягкий deadline
! Жёсткий deadline
|-
|[https://docs.google.com/document/d/1guSYvWrS7t_7VCkxn3ttp9vh9j9jjE5-/edit?usp=sharing&ouid=116573106071567337960&rtpof=true&sd=true Java OOP] ||21.10||  |28.10
|-
|[https://docs.google.com/document/d/1xnnZG46yrVymfx7QKGf4SvyAaGEboP95/edit?usp=sharing&ouid=116573106071567337960&rtpof=true&sd=true Java Reflection] ||04.11||  |11.11
|-
|[https://docs.google.com/document/d/10Vz6GRSlo-UdSa7KIQw0aqYlk30fa4o0/edit?usp=sharing&ouid=116573106071567337960&rtpof=true&sd=true Multithreading]  ||18.11||  |25.11
|-
|[https://docs.google.com/document/d/1YsQfssZFXhkvK8T6h8BRB5fDNNpimEhE/edit?usp=sharing&ouid=116573106071567337960&rtpof=true&sd=true Spring]  ||02.12||  |09.12
|}
==== Алгоритм сдачи ДЗ ====
У вас в репозитории есть заранее созданные ветки hw1task1, hw1task2, hw1task3, hw1task4
Допустим вы сделали первую задачу из первого д/з. Алгоритм сдачи следующий:
* Создать папку hw1task1
* В эту папку поместить ваше решение.
* Папку с её содержимым закомитить в ветку hw1task1
* Сделать merge request в главную ветку
* Никого не назначать в качестве assignee. Если вдруг система автоматически кого-то назначит assignee, то удалите его и убедитесь, что это поле пустое.
==== Доступы ====
По вопросам доступов и работы Gitlab-сервера пишите в [https://docs.google.com/forms/d/e/1FAIpQLSd_JxfMFOcWdaXKLC8sydJlDtwRG-B6Puiia_h3GqORXEDUKA/viewform форму] или на почту servers@atp-fivt.org.
== Экстерн-проект ==
Участие в реальном opensource-проекте под руководством заказчика из индустрии. Для участия в проекте нужно '''уже обладать''' базовыми знаниями Java core. С проектами этого семестра ознакомиться можно здесь '''[https://docs.google.com/document/d/1T2O6aL15ECmVvzXAk0PICIpZKjjhVNR27SbsjDikrkQ/edit?usp=sharing здесь]'''.
Бонусы от участия в проекте:
* участия в проекте достаточно для того чтоб закрыть курс. В этом случае все остальные домашки, контрольные и посещение занятий - по желанию.
* опыт работы в команде (обычно на 1 проект 2-3 человека)
* еженедельные встречи с куратором проекта. Куратор проекта не только руководит выполнением и ставит задачи, но и делает code review.
* публикация на Хабре или выступление в профильных Java-конференциях
* запись в Центральном репозитории Maven, где вы будете записаны как Developer проекта.
Регистрация на проект [https://forms.gle/Zhc3b3wyct6gAupr9 здесь]'''.
Проекты, которые делали ваши предшественники и что из этого получилось, можно посмотреть '''[https://github.com/atp-mipt здесь]'''.
== Бонус ==
За активность в чате курса и на занятиях можно получить дополнительно +1 балл. Количество студентов, получивших бонус, неограничено.
= Список рекомендуемых материалов =
=== Основная литература ===
==== Java Core ====
# Б. Эккель. “Философия Java”. 4-е издание (2006)
# К. Хорстманн. “Core Java”. 11-е издание в двух томах (2019)
# И. Блинов. “Java from Epam”. (2020)
# Дж. Блох. “Java эффективное программирование”. 3-е издание (2019)
# Р. Уорбэртон. “Лямбда выражения в Java 8”. (2014)
# Б. Гетц. “Java concurrency на практике”. (2020)
# R-G. Urma et al. “Modern Java in action”
# Walls, C: "Spring in Action", Fifth Edition
# Walls, C:"Spring Boot in Action"
==== Spring ====
# [https://jug.ru/talks/meetups/spring-the-ripper/ Евгений Борисов - Spring-потрошитель]
# [https://www.youtube.com/watch?v=9E64BClVi7E Олег Докука — Строим криптотрейдинг-платформу, используя Spring 5 и Reactor 3]
# [https://www.youtube.com/watch?v=tjp8pTOyiWg Максим Гореликов — Дизайн реактивной системы на Spring 5/Reactor]

Текущая версия от 14:38, 18 сентября 2026

Общие сведения

  • Семестр: 3 и 5 (2й и 3й курсы)
  • Форма контроля: диф. зачет

Вводное занятие

Важные ссылки

Deadline регистрации на курс: 15.09.26

Материалы


Команда курса

Руководитель курса

  • Александр Ермаков @AlexOEJ

Лектор

Семинаристы

  • Рубаненко Мария Александровна (группа англоязычных иностранцев) - @maryrubik
  • Беженарь Михаил Витальевич - @EntityResult
  • Куренков Владимир - @vvk101
  • Левин Алексей [1]

Учебные ассистенты

Контакт для организационных вопросов

Критерии получения оценки

Зачет ставится по результатам работы в семестре.

Домашние задания

Планируется 4 домашних задания. Проверка в форме code review. Исправления по code review можно делать в течение 1 месяца после 1-го комментария.

Дедлайны по домашкам

  • За сдачу позже мягкого дедлайна -50%
  • Позже жёсткого можно сдавать с оценкой 25% максимум.

Под сдачей понимается: код лежит в gitlab-репозитории и сделан merge request из ветки с задачей в ветку master.

Домашка Мягкий deadline Жёсткий deadline
Java OOP 21.10 28.10
Java Reflection 04.11 11.11
Multithreading 18.11 25.11
Spring 02.12 09.12

Алгоритм сдачи ДЗ

У вас в репозитории есть заранее созданные ветки hw1task1, hw1task2, hw1task3, hw1task4 Допустим вы сделали первую задачу из первого д/з. Алгоритм сдачи следующий:

  • Создать папку hw1task1
  • В эту папку поместить ваше решение.
  • Папку с её содержимым закомитить в ветку hw1task1
  • Сделать merge request в главную ветку
  • Никого не назначать в качестве assignee. Если вдруг система автоматически кого-то назначит assignee, то удалите его и убедитесь, что это поле пустое.

Доступы

По вопросам доступов и работы Gitlab-сервера пишите в форму или на почту servers@atp-fivt.org.

Экстерн-проект

Участие в реальном opensource-проекте под руководством заказчика из индустрии. Для участия в проекте нужно уже обладать базовыми знаниями Java core. С проектами этого семестра ознакомиться можно здесь здесь.

Бонусы от участия в проекте:

  • участия в проекте достаточно для того чтоб закрыть курс. В этом случае все остальные домашки, контрольные и посещение занятий - по желанию.
  • опыт работы в команде (обычно на 1 проект 2-3 человека)
  • еженедельные встречи с куратором проекта. Куратор проекта не только руководит выполнением и ставит задачи, но и делает code review.
  • публикация на Хабре или выступление в профильных Java-конференциях
  • запись в Центральном репозитории Maven, где вы будете записаны как Developer проекта.

Регистрация на проект здесь.

Проекты, которые делали ваши предшественники и что из этого получилось, можно посмотреть здесь.

Бонус

За активность в чате курса и на занятиях можно получить дополнительно +1 балл. Количество студентов, получивших бонус, неограничено.


Список рекомендуемых материалов

Основная литература

Java Core

  1. Б. Эккель. “Философия Java”. 4-е издание (2006)
  2. К. Хорстманн. “Core Java”. 11-е издание в двух томах (2019)
  3. И. Блинов. “Java from Epam”. (2020)
  4. Дж. Блох. “Java эффективное программирование”. 3-е издание (2019)
  5. Р. Уорбэртон. “Лямбда выражения в Java 8”. (2014)
  6. Б. Гетц. “Java concurrency на практике”. (2020)
  7. R-G. Urma et al. “Modern Java in action”
  8. Walls, C: "Spring in Action", Fifth Edition
  9. Walls, C:"Spring Boot in Action"

Spring

  1. Евгений Борисов - Spring-потрошитель
  2. Олег Докука — Строим криптотрейдинг-платформу, используя Spring 5 и Reactor 3
  3. Максим Гореликов — Дизайн реактивной системы на Spring 5/Reactor