Java bak 2023 — различия между версиями
Aermakov (обсуждение | вклад) |
Snezhanna (обсуждение | вклад) (→Важные ссылки) |
||
(не показана 61 промежуточная версия 3 участников) | |||
Строка 2: | Строка 2: | ||
* Семестр: 5 (3й курс) | * Семестр: 5 (3й курс) | ||
* Форма контроля: диф. зачет | * Форма контроля: диф. зачет | ||
+ | |||
+ | [https://drive.google.com/drive/folders/18biA6Vba6HPZrOE-0nk8RQIuU3ZRKLSO?usp=sharing Вводное занятие 05.09.23] | ||
== Важные ссылки == | == Важные ссылки == | ||
− | * | + | * [https://docs.google.com/spreadsheets/d/e/2PACX-1vTjAwPBoakqdlez0E2GFBaXQUayYJ9PVSqEt-bbbKPbmVLq-TCCgh85Noy7fi2Vv7CtW7fMQum9WVoy/pubhtml План курса] |
− | * [ '''Таблица с оценками'''] | + | * [https://docs.google.com/spreadsheets/d/e/2PACX-1vRs9JYgvwsB2aQEGIV45imSiJYjnRAclf9JSJetlMV8gdJtg3g7_3RYEQ3mQhfIao_LjzOMFh71eIjV/pubhtml?gid=1060554530&single=true '''Таблица с оценками'''] |
− | * [ Статус | + | * [https://docs.google.com/spreadsheets/d/e/2PACX-1vRs9JYgvwsB2aQEGIV45imSiJYjnRAclf9JSJetlMV8gdJtg3g7_3RYEQ3mQhfIao_LjzOMFh71eIjV/pubhtml?gid=773671642&single=true Статус проверки ДЗ] |
− | * '''[ Форма регистрации]''' | + | * '''[https://forms.gle/r4434oonzh9eeiQQ6 Форма регистрации]''' |
+ | * [https://forms.gle/YMEyUZNTfGE2K3PQ8 Продление дедлайнов] | ||
+ | |||
+ | Deadline регистрации на курс: 15.09.23 | ||
* [https://t.me/+ATfYp4vOaT5hZTdi Телеграм-чат курса] | * [https://t.me/+ATfYp4vOaT5hZTdi Телеграм-чат курса] | ||
Строка 13: | Строка 18: | ||
* Лекции | * Лекции | ||
** [https://inponomarev.ru/corejava Страница Ивана Пономарёва с видео и слайдами] | ** [https://inponomarev.ru/corejava Страница Ивана Пономарёва с видео и слайдами] | ||
− | * [ | + | * [https://gitlab.atp-fivt.org/courses-public/java-bak Коды и презентации семинаров] |
− | |||
− | |||
− | |||
= Команда курса = | = Команда курса = | ||
− | + | Руководитель курса | |
− | * Иван Пономарев | + | * Александр Ермаков [https://t.me/AlexOEJ @AlexOEJ] |
− | + | Лектор | |
+ | * Иван Пономарев [https://t.me/ivan_ponomarev @ivan_ponomarev] | ||
+ | Семинаристы | ||
+ | * Екатерина Хурсик [https://t.me/katika2308 @katika2308] | ||
+ | * Мария Рубаненко [https://t.me/maryrubik @maryrubik] | ||
+ | * Роман Бондарь [https://t.me/bond2000r @bond2000r] | ||
Учебные ассистенты | Учебные ассистенты | ||
− | + | * Тимур Хузин [https://t.me/unkle_ayy @unkle_ayy] | |
+ | * Анастасия Филиппова [https://t.me/fanastasiiaf @fanastasiiaf] | ||
+ | * Анатолий Козлов [https://t.me/AntolyKozlov @AntolyKozlov] | ||
+ | * Дмитрий [https://t.me/dmchub @dmchub] | ||
= Критерии получения оценки = | = Критерии получения оценки = | ||
Строка 29: | Строка 39: | ||
== Домашние задания == | == Домашние задания == | ||
− | Планируется 4 домашних задания. | + | Планируется 4 домашних задания. Проверка в форме code review. Исправления по code review можно делать в течение 1 месяца после 1-го комментария. |
+ | |||
+ | ==== Дедлайны по домашкам ==== | ||
+ | * За сдачу позже мягкого дедлайна -50% | ||
+ | * Позже жёсткого можно сдавать с оценкой 25% максимум. | ||
+ | |||
+ | Под сдачей понимается: код лежит в gitlab-репозитории и сделан merge request из ветки с задачей в ветку master. | ||
{| class="wikitable" | {| class="wikitable" | ||
Строка 36: | Строка 52: | ||
! Мягкий deadline | ! Мягкий deadline | ||
! Жёсткий deadline | ! Жёсткий deadline | ||
− | |||
|- | |- | ||
− | |[ | + | |[https://docs.google.com/document/d/1npIYpWtDf4anKATulqdUWCJ3NMwQGSiN Java OOP] ||15.10|| |22.10 |
|- | |- | ||
− | |[ | + | |[https://docs.google.com/document/d/1PX8RtOOvL1C4cdNWnf_jvqRZQMsppG2x Java Reflection] ||05.11|| |12.11 |
|- | |- | ||
− | |[ Multithreading] | | + | |[https://docs.google.com/document/d/1fGIpupeTVuKTUijdPvHcFUlK-aaRkD_P Multithreading] ||03.12|| |10.12 |
|- | |- | ||
− | |[ Spring] |17.12| | + | |[https://docs.google.com/document/d/1YsQfssZFXhkvK8T6h8BRB5fDNNpimEhE Spring] ||17.12|| |22.12 |
|} | |} | ||
==== Алгоритм сдачи ДЗ ==== | ==== Алгоритм сдачи ДЗ ==== | ||
− | + | У вас в репозитории есть заранее созданные ветки hw1task1, hw1task2, hw1task3, hw1task4 | |
+ | Допустим вы сделали первую задачу из первого д/з. Алгоритм сдачи следующий: | ||
+ | * Создать папку hw1task1 | ||
+ | * В эту папку поместить ваше решение. | ||
+ | * Папку с её содержимым закомитить в ветку hw1task1 | ||
+ | * Сделать merge request в главную ветку | ||
+ | * Никого не назначать в качестве assignee. Если вдруг система автоматически кого-то назначит assignee, то удалите его и убедитесь, что это поле пустое. | ||
==== Доступы ==== | ==== Доступы ==== | ||
Строка 65: | Строка 86: | ||
! Результаты | ! Результаты | ||
|- | |- | ||
− | | Программирование на Java. Quiz #1 || Синтаксис Java. Ветвления, циклы и метки. Примитивные типы и объекты в Java. Приведение типов. Inboxing, outboxing. Exceptions. Массивы и коллекции. Строки. Классы (абстрактрые, вложенные, внутренние, анонимные, локальные...), интерфейсы. Класс Object и всё, что с ним связано. Generics, enums (enums as classes). || | + | | Программирование на Java. Quiz #1 || Синтаксис Java. Ветвления, циклы и метки. Примитивные типы и объекты в Java. Приведение типов. Inboxing, outboxing. Exceptions. Массивы и коллекции. Строки. Классы (абстрактрые, вложенные, внутренние, анонимные, локальные...), интерфейсы. Класс Object и всё, что с ним связано. Generics, enums (enums as classes). || 27.10 || 25 мин. || |
|- | |- | ||
− | |Программирование на Java. Quiz #2 || Тестирование приложений в Java. Сборка приложений. Работа с базой данных. Многопоточность в Java. Аннотации. Spring|| | + | |Программирование на Java. Quiz #2 || Тестирование приложений в Java. Сборка приложений. Работа с базой данных. Многопоточность в Java. Аннотации. Spring|| 15.12 || 20 мин. || |
|} | |} | ||
− | В случае если вы не сможете написать КР в указанную дату по технической или другой уважительной причине, просьба заполнить [ '''форму на дописывание''']. | + | В случае если вы не сможете написать КР в указанную дату по технической или другой уважительной причине, просьба заполнить [https://forms.gle/15VwKnWPJtqsqJhC6 '''форму на дописывание''']. Даты дописывания будут объявлены позднее. |
+ | == Экстерн-проект == | ||
+ | Участие в реальном opensource-проекте под руководством заказчика из индустрии. Для участия в проекте нужно '''уже обладать''' базовыми знаяниями Java core. С проектами этого семестра ознакомиться можно здесь '''[https://docs.google.com/document/d/1n4ocgNReB4a2PQfC-VPCSwVc5VeDa6UfWgZBxGgJUkU/edit#heading=h.n0oljbb3mjh6 здесь]'''. | ||
+ | |||
+ | Бонусы от участия в проекте: | ||
+ | * участия в проекте достаточно для того чтоб закрыть курс. В этом случае все остальные домашки, контрольные и посещение занятий - по желанию. | ||
+ | * опыт работы в команде (обычно на 1 проект 2-3 человека) | ||
+ | * еженедельные встречи с куратором проекта. Куратор проекта не только руководит выполением и ставит задачи, но и делает code review. | ||
+ | * публикация на Хабре или выступление в профильных Java-конференциях | ||
+ | * запись в Центральном репозитории Maven, где вы будете записаны как Developer проекта. | ||
+ | |||
+ | Регистрация на проект [https://forms.gle/88Vg7Myb7uTBRbMK7 здесь]'''. | ||
+ | |||
+ | Проекты, которые делали ваши предшественники и что из этого получилось, можно посмотреть '''[https://github.com/atp-mipt здесь]'''. | ||
== Бонус == | == Бонус == | ||
За активность в чате курса и на занятиях можно получить дополнительно +1 балл. Количество студентов, получивших бонус, неограничено. | За активность в чате курса и на занятиях можно получить дополнительно +1 балл. Количество студентов, получивших бонус, неограничено. | ||
− | |||
− | |||
− | |||
= Список рекомендуемых материалов = | = Список рекомендуемых материалов = | ||
=== Основная литература === | === Основная литература === | ||
==== Java Core ==== | ==== Java Core ==== | ||
− | # Б. Эккель “Философия Java” | + | # Б. Эккель. “Философия 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” | # R-G. Urma et al. “Modern Java in action” | ||
− | |||
# Walls, C: "Spring in Action", Fifth Edition | # Walls, C: "Spring in Action", Fifth Edition | ||
# Walls, C:"Spring Boot in Action" | # Walls, C:"Spring Boot in Action" | ||
− | |||
− | |||
==== Spring ==== | ==== Spring ==== | ||
Строка 96: | Строка 127: | ||
# [https://www.youtube.com/watch?v=9E64BClVi7E Олег Докука — Строим криптотрейдинг-платформу, используя Spring 5 и Reactor 3] | # [https://www.youtube.com/watch?v=9E64BClVi7E Олег Докука — Строим криптотрейдинг-платформу, используя Spring 5 и Reactor 3] | ||
# [https://www.youtube.com/watch?v=tjp8pTOyiWg Максим Гореликов — Дизайн реактивной системы на Spring 5/Reactor] | # [https://www.youtube.com/watch?v=tjp8pTOyiWg Максим Гореликов — Дизайн реактивной системы на Spring 5/Reactor] | ||
− | |||
− | |||
− |
Текущая версия на 14:18, 21 ноября 2023
Содержание
Общие сведения
- Семестр: 5 (3й курс)
- Форма контроля: диф. зачет
Важные ссылки
Deadline регистрации на курс: 15.09.23
Материалы
Команда курса
Руководитель курса
- Александр Ермаков @AlexOEJ
Лектор
- Иван Пономарев @ivan_ponomarev
Семинаристы
- Екатерина Хурсик @katika2308
- Мария Рубаненко @maryrubik
- Роман Бондарь @bond2000r
Учебные ассистенты
- Тимур Хузин @unkle_ayy
- Анастасия Филиппова @fanastasiiaf
- Анатолий Козлов @AntolyKozlov
- Дмитрий @dmchub
Критерии получения оценки
Зачет ставится по результатам работы в семестре.
Домашние задания
Планируется 4 домашних задания. Проверка в форме code review. Исправления по code review можно делать в течение 1 месяца после 1-го комментария.
Дедлайны по домашкам
- За сдачу позже мягкого дедлайна -50%
- Позже жёсткого можно сдавать с оценкой 25% максимум.
Под сдачей понимается: код лежит в gitlab-репозитории и сделан merge request из ветки с задачей в ветку master.
Домашка | Мягкий deadline | Жёсткий deadline |
---|---|---|
Java OOP | 15.10 | 22.10 |
Java Reflection | 05.11 | 12.11 |
Multithreading | 03.12 | 10.12 |
Spring | 17.12 | 22.12 |
Алгоритм сдачи ДЗ
У вас в репозитории есть заранее созданные ветки hw1task1, hw1task2, hw1task3, hw1task4 Допустим вы сделали первую задачу из первого д/з. Алгоритм сдачи следующий:
- Создать папку hw1task1
- В эту папку поместить ваше решение.
- Папку с её содержимым закомитить в ветку hw1task1
- Сделать merge request в главную ветку
- Никого не назначать в качестве assignee. Если вдруг система автоматически кого-то назначит assignee, то удалите его и убедитесь, что это поле пустое.
Доступы
По вопросам доступов и работы Gitlab-сервера пишите в форму или на почту servers@atp-fivt.org.
Мини-контрольные
Состоятся 2 контрольные. На контрольных нельзя пользоваться IDE и интернетом. Код писать не потребуется.
Название события на http://exams.mipt.ru/ | Темы | Дата | Длительность | Результаты |
---|---|---|---|---|
Программирование на Java. Quiz #1 | Синтаксис Java. Ветвления, циклы и метки. Примитивные типы и объекты в Java. Приведение типов. Inboxing, outboxing. Exceptions. Массивы и коллекции. Строки. Классы (абстрактрые, вложенные, внутренние, анонимные, локальные...), интерфейсы. Класс Object и всё, что с ним связано. Generics, enums (enums as classes). | 27.10 | 25 мин. | |
Программирование на Java. Quiz #2 | Тестирование приложений в Java. Сборка приложений. Работа с базой данных. Многопоточность в Java. Аннотации. Spring | 15.12 | 20 мин. |
В случае если вы не сможете написать КР в указанную дату по технической или другой уважительной причине, просьба заполнить форму на дописывание. Даты дописывания будут объявлены позднее.
Экстерн-проект
Участие в реальном 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"