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

Материал из Public ATP Wiki
Перейти к: навигация, поиск
м
 
(не показано 6 промежуточных версий 2 участников)
Строка 10: Строка 10:
 
* [https://docs.google.com/spreadsheets/d/e/2PACX-1vRC2Vz7uzhKb9GVGvE7MsbNkJpmJuRBzkkB36vqtacbp1dClQEU8BfMF353FNmSpSgO0PsqNed9ozOB/pubhtml?gid=1528381377&single=true Статус проверки ДЗ]
 
* [https://docs.google.com/spreadsheets/d/e/2PACX-1vRC2Vz7uzhKb9GVGvE7MsbNkJpmJuRBzkkB36vqtacbp1dClQEU8BfMF353FNmSpSgO0PsqNed9ozOB/pubhtml?gid=1528381377&single=true Статус проверки ДЗ]
 
* '''[https://forms.gle/HQ2p1uB4f363wrg66 Форма регистрации]'''  
 
* '''[https://forms.gle/HQ2p1uB4f363wrg66 Форма регистрации]'''  
* [https://forms.gle/VBzrLJHxwouc8Yyk8 Продление дедлайнов]
+
* [https://forms.gle/Q8ejsqA6dvAbPBHH8 Продление дедлайнов]
  
 
Deadline регистрации на курс: 15.09.25
 
Deadline регистрации на курс: 15.09.25
Строка 24: Строка 24:
 
* Александр Ермаков [https://t.me/AlexOEJ @AlexOEJ]
 
* Александр Ермаков [https://t.me/AlexOEJ @AlexOEJ]
 
Лектор
 
Лектор
* Иван Пономарев [https://t.me/ivan_ponomarev @ivan_ponomarev]
+
* Иван Пономарёв [https://t.me/ivan_ponomarev @ivan_ponomarev]
  
 
Семинаристы
 
Семинаристы
Строка 64: Строка 64:
 
! Жёсткий deadline
 
! Жёсткий deadline
 
|-
 
|-
|[https://docs.google.com/document/d/14QMlHxBB5_IYLun30s1e_WzTo2Y0Q9Xi/edit?usp=drive_link&ouid=116573106071567337960&rtpof=true&sd=true Java OOP] ||15.10||  |22.10  
+
|[https://docs.google.com/document/d/14QMlHxBB5_IYLun30s1e_WzTo2Y0Q9Xi/edit?usp=drive_link&ouid=116573106071567337960&rtpof=true&sd=true Java OOP] ||21.10||  |29.10  
 
|-
 
|-
|[https://docs.google.com/document/d/1q3M9TWoVJOO1Bkhm3L32uMm-t7AmxE4A/edit?usp=drive_link&ouid=116573106071567337960&rtpof=true&sd=true Java Reflection] ||29.10||  |05.11  
+
|[https://docs.google.com/document/d/1q3M9TWoVJOO1Bkhm3L32uMm-t7AmxE4A/edit?usp=drive_link&ouid=116573106071567337960&rtpof=true&sd=true Java Reflection] ||5.11||  |12.11  
 
|-
 
|-
|[Multithreading]  ||26.11||  |03.12
+
|[https://docs.google.com/document/d/1fLnVYcJ9ct7GtGCz8LxApJlHfRwp9w2d/edit?usp=sharing&ouid=116573106071567337960&rtpof=true&sd=true Multithreading]  ||26.11||  |03.12
 
|-
 
|-
|[Spring]  ||17.12||  |24.12
+
|[https://docs.google.com/document/d/1YsQfssZFXhkvK8T6h8BRB5fDNNpimEhE/edit?usp=sharing&ouid=116573106071567337960&rtpof=true&sd=true Spring]  ||16.12||  |20.12
 
|}
 
|}
  
Строка 91: Строка 91:
 
* участия в проекте достаточно для того чтоб закрыть курс. В этом случае все остальные домашки, контрольные и посещение занятий - по желанию.
 
* участия в проекте достаточно для того чтоб закрыть курс. В этом случае все остальные домашки, контрольные и посещение занятий - по желанию.
 
* опыт работы в команде (обычно на 1 проект 2-3 человека)  
 
* опыт работы в команде (обычно на 1 проект 2-3 человека)  
* еженедельные встречи с куратором проекта. Куратор проекта не только руководит выполением и ставит задачи, но и делает code review.
+
* еженедельные встречи с куратором проекта. Куратор проекта не только руководит выполнением и ставит задачи, но и делает code review.
 
* публикация на Хабре или выступление в профильных Java-конференциях
 
* публикация на Хабре или выступление в профильных Java-конференциях
 
* запись в Центральном репозитории Maven, где вы будете записаны как Developer проекта.
 
* запись в Центральном репозитории Maven, где вы будете записаны как Developer проекта.

Текущая версия на 13:48, 3 декабря 2025

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

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

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

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

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

Материалы

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

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

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

Лектор

Семинаристы

  • Калинин Иван Сергеевич - @taekwandodo
  • Рубаненко Мария Александровна - @maryrubik
  • Филиппова Анастасия Витальевна - @fanastasiiaf
  • Цатурян Джулета Артуровна - @juletats

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


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

Куратор курса @atpfpmi_curators

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

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

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

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

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

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

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

Домашка Мягкий deadline Жёсткий deadline
Java OOP 21.10 29.10
Java Reflection 5.11 12.11
Multithreading 26.11 03.12
Spring 16.12 20.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