Промышленное программирование на языке Java 2025: различия между версиями
Aermakov (обсуждение | вклад) Нет описания правки |
|||
| (не показано 28 промежуточных версий 3 участников) | |||
| Строка 1: | Строка 1: | ||
= Общие сведения = | = Общие сведения = | ||
* Семестр: 5 (3й | * Семестр: 3 и 5 (2й и 3й курсы) | ||
* Форма контроля: диф. зачет | * Форма контроля: диф. зачет | ||
[https://drive.google.com/drive/folders/ | [https://drive.google.com/drive/folders/1KFzrvUAwji3e6MbobnT30gAjkLIrr_lj?usp=share_link Вводное занятие ] | ||
== Важные ссылки == | == Важные ссылки == | ||
* [https://docs.google.com/spreadsheets/d/e/2PACX- | * [https://docs.google.com/spreadsheets/d/e/2PACX-1vRC2Vz7uzhKb9GVGvE7MsbNkJpmJuRBzkkB36vqtacbp1dClQEU8BfMF353FNmSpSgO0PsqNed9ozOB/pubhtml?gid=530556398&single=true План курса] | ||
* [https://docs.google.com/spreadsheets/d/e/2PACX- | * [https://docs.google.com/spreadsheets/d/e/2PACX-1vRC2Vz7uzhKb9GVGvE7MsbNkJpmJuRBzkkB36vqtacbp1dClQEU8BfMF353FNmSpSgO0PsqNed9ozOB/pubhtml?gid=1396179486&single=true '''Таблица с оценками'''] | ||
* [https://docs.google.com/spreadsheets/d/e/2PACX- | * [https://docs.google.com/spreadsheets/d/e/2PACX-1vRC2Vz7uzhKb9GVGvE7MsbNkJpmJuRBzkkB36vqtacbp1dClQEU8BfMF353FNmSpSgO0PsqNed9ozOB/pubhtml?gid=1528381377&single=true Статус проверки ДЗ] | ||
* '''[https://forms.gle/ | * '''[https://forms.gle/HQ2p1uB4f363wrg66 Форма регистрации]''' | ||
* [https://forms.gle/ | * [https://forms.gle/Q8ejsqA6dvAbPBHH8 Продление дедлайнов] | ||
Deadline регистрации на курс: 15.09.25 | Deadline регистрации на курс: 15.09.25 | ||
* [https://t.me/+ | * [https://t.me/+IML2UmP5IbNkMWJi Телеграм-чат курса] | ||
== Материалы == | == Материалы == | ||
* | * [https://plvideo.ru/playlist?list=YNyLghTXtJ7N Видеозаписи занятий] | ||
** [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/taekwandodo @taekwandodo] | |||
* Рубаненко Мария Александровна - [https://t.me/maryrubik @maryrubik] | |||
* Филиппова Анастасия Витальевна - [https://t.me/fanastasiiaf @fanastasiiaf] | |||
* Цатурян Джулета Артуровна - [https://t.me/juletats @juletats] | |||
Учебные ассистенты | |||
* Якушкова Елизавета Сергеевна - [https://t.me/pyrrrolidine @pyrrrolidine] | |||
* Махмудов Шеравган - [https://t.me/onepathq @onepathq] | |||
* Чесноков Александр Михайлович - [https://t.me/s_chesnokoff @s_chesnokoff] | |||
* Сухов Михаил - [https://t.me/Popadosych @Popadosych] | |||
* Гальперин Константин - [https://t.me/konstantin_galperin @konstantin_galperin] | |||
* Кожанов Глеб - [https://t.me/int_main_int @int_main_int] | |||
* Иванов Дмитрий | |||
* Беженарь Михаил Витальевич - [https://t.me/EntityResult @EntityResult] | |||
==== Контакт для организационных вопросов ==== | |||
Куратор курса [https://t.me/atpfpmi_curators @atpfpmi_curators] | |||
= Критерии получения оценки = | |||
Зачет ставится по результатам работы в семестре. | |||
== Домашние задания == | |||
Планируется 4 домашних задания. Проверка в форме code review. Исправления по code review можно делать в течение 1 месяца после 1-го комментария. | |||
==== Дедлайны по домашкам ==== | |||
* За сдачу позже мягкого дедлайна -50% | |||
* Позже жёсткого можно сдавать с оценкой 25% максимум. | |||
Под сдачей понимается: код лежит в gitlab-репозитории и сделан merge request из ветки с задачей в ветку master. | |||
{| class="wikitable" | |||
|- | |||
! Домашка | |||
! Мягкий deadline | |||
! Жёсткий deadline | |||
|- | |||
|[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] ||5.11|| |12.11 | |||
|- | |||
|[https://docs.google.com/document/d/1fLnVYcJ9ct7GtGCz8LxApJlHfRwp9w2d/edit?usp=sharing&ouid=116573106071567337960&rtpof=true&sd=true Multithreading] ||26.11|| |03.12 | |||
|- | |||
|[https://docs.google.com/document/d/1YsQfssZFXhkvK8T6h8BRB5fDNNpimEhE/edit?usp=sharing&ouid=116573106071567337960&rtpof=true&sd=true Spring] ||16.12|| |20.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/1OJf23cPEcrQDLHudCh05MlOGaFTDE0-3eyp9A2isW20/edit?usp=sharing здесь]'''. | |||
Бонусы от участия в проекте: | |||
* участия в проекте достаточно для того чтоб закрыть курс. В этом случае все остальные домашки, контрольные и посещение занятий - по желанию. | |||
* опыт работы в команде (обычно на 1 проект 2-3 человека) | |||
* еженедельные встречи с куратором проекта. Куратор проекта не только руководит выполнением и ставит задачи, но и делает code review. | |||
* публикация на Хабре или выступление в профильных Java-конференциях | |||
* запись в Центральном репозитории Maven, где вы будете записаны как Developer проекта. | |||
Регистрация на проект [https://forms.gle/D5YLcShEStbFqLK1A здесь]'''. | |||
Проекты, которые делали ваши предшественники и что из этого получилось, можно посмотреть '''[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] | |||
Текущая версия от 10:48, 3 декабря 2025
Общие сведения
- Семестр: 3 и 5 (2й и 3й курсы)
- Форма контроля: диф. зачет
Важные ссылки
Deadline регистрации на курс: 15.09.25
Материалы
Команда курса
Руководитель курса
- Александр Ермаков @AlexOEJ
Лектор
- Иван Пономарёв @ivan_ponomarev
Семинаристы
- Калинин Иван Сергеевич - @taekwandodo
- Рубаненко Мария Александровна - @maryrubik
- Филиппова Анастасия Витальевна - @fanastasiiaf
- Цатурян Джулета Артуровна - @juletats
Учебные ассистенты
- Якушкова Елизавета Сергеевна - @pyrrrolidine
- Махмудов Шеравган - @onepathq
- Чесноков Александр Михайлович - @s_chesnokoff
- Сухов Михаил - @Popadosych
- Гальперин Константин - @konstantin_galperin
- Кожанов Глеб - @int_main_int
- Иванов Дмитрий
- Беженарь Михаил Витальевич - @EntityResult
Контакт для организационных вопросов
Куратор курса @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
- Б. Эккель. “Философия 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"