Java mag 2021 — различия между версиями

Материал из Public ATP Wiki
Перейти к: навигация, поиск
(Общие сведения)
(Мини-контрольные)
 
(не показано 35 промежуточных версий 2 участников)
Строка 2: Строка 2:
 
* Семестр: 10 (5й курс)
 
* Семестр: 10 (5й курс)
 
* Форма контроля: диф. зачет
 
* Форма контроля: диф. зачет
* [TBD Форма регистрации]
+
* '''[https://docs.google.com/spreadsheets/d/e/2PACX-1vSC6fApevb_ycB-O6aGyiVUhuxCBa1NdLkTWBO16sb5uoE5dL8uFMfVkkdzWnPMlSIhjqFtpAEU9I9q/pubhtml?gid=0&single=true План курса]'''
 +
* '''[https://docs.google.com/spreadsheets/d/1xDK7yIiTSXUJBX3gIa_tmcxbj_s9taV4TkW9B3R8Gak Таблица с оценками]'''
 +
* '''[https://forms.gle/NMnRv1MFQdDYrnYW9 Форма регистрации]'''
 
* [https://t.me/joinchat/Hh47wsRrSN0gCWxE Телеграм-чат курса]
 
* [https://t.me/joinchat/Hh47wsRrSN0gCWxE Телеграм-чат курса]
* [ Таблица с оценками]
 
  
'''Материалы занятий'''
+
== Материалы занятий ==
Для доступа нужно зайти в аккаунт ''@phystech.edu''.
+
Для доступа к видео нужно зайти в аккаунт ''@phystech.edu''.
 
* [https://drive.google.com/drive/folders/1qfbfrExFVWixPYL242rSoYCZXJ71dH-x Видео занятий]
 
* [https://drive.google.com/drive/folders/1qfbfrExFVWixPYL242rSoYCZXJ71dH-x Видео занятий]
 
* [https://drive.google.com/drive/folders/1UXqAOEPevOZ1f4FqBJxKG69caBALVdtp Слайды презентаций]
 
* [https://drive.google.com/drive/folders/1UXqAOEPevOZ1f4FqBJxKG69caBALVdtp Слайды презентаций]
 +
* [https://gitlab.com/VeLKerr/mipt-mag-java-2021 Репозиторий с кодами]
 +
 +
= Преподаватели =
 +
* Олег Ивченко
 +
* Иван Федотов
 +
 +
Учебные ассистенты
 +
* Смагин Евгений
 +
* Ахметзянов Талгат
 +
 +
= Критерии получения оценки =
 +
Зачет ставится по результатам работы в семестре.
 +
 +
== Домашние задания ==
 +
Планируется 5 домашних заданий. Проверка включает 2 этапа:
 +
# прохождение тестов в Yandex.Contest (ДЗ-1,2) и / или проверка тестов, написанных вами. Код нужно залить в соотв. репозиторий на gitlab.atp-fivt.org.
 +
# code review при условии выполненного п.1. В процессе code review вы получаете Фидбек от проверяющего. Его можно прочитать на странице вашего репозитория с ДЗ (Project -> Activity) или в автоматических письмах от automation@atp-fivt.org. Исправления по code review можно делать в течение '''1 месяца''' после 1-го комментария.
 +
 +
==== Дедлайны по домашкам ====
 +
* За сдачу позже мягкого дедлайна -50%
 +
* Позже жёсткого можно сдавать с оценкой 25% максимум.
 +
Под сдачей понимается выполнение 2 факторов:
 +
* код проходит тесты (в Яндекс.Контесте или необходимое кол-во тестов, кот. написали вы сами)
 +
* код лежит в gitlab-репозитории
 +
 +
{|  class="wikitable"
 +
|-
 +
! Домашка
 +
! Мягкий deadline
 +
! Жёсткий deadline
 +
|-
 +
|[https://contest.yandex.ru/contest/24760/enter/  Simple Java Core] || 25.02, 23:55 || 04.03, 23:55
 +
|-
 +
|[https://docs.google.com/document/d/1OtUph2wb6P-CbfFC_i3ACgGdRWY2sj8IWynLKVIozKk Advanced Java Core & JUnit] || 25.03, 23:55 || 01.04, 23:55
 +
|-
 +
|[https://docs.google.com/document/d/1Ge3CUkFow4vertcK9NjStpiwlm-eA6zJutIDA49GTRk JDBC, external export, GitLab CI] || 22.04, 23:55  || 29.04, 23:55
 +
|-
 +
|[https://docs.google.com/document/d/1mb7_bpCKV45n9cVgGI4q2oEJ_x13Rbos-HqvSWrsGmg Multithreading] || 06.05, 23:55  || 13.05, 23:55
 +
|-
 +
|[https://docs.google.com/document/d/1Y0hphgYqBLF-nm5yVjYoHnD7eOTGhgPiBab8z7GC8F4 Spring] || 22.05, 23:55  || 22.05, 23:55
 +
|}
 +
 +
== Мини-контрольные ==
 +
Состоятся 2 контрольные, которые будут проводиться с помощью системы прокторинга http://exams.mipt.ru/. По ссылке доступна [https://drive.google.com/file/d/1n0iR-IaPnT4EeEEUCksODQnjl34L8Xlc/view?usp=sharing инструкция пользователя].
 +
На контрольных нельзя пользоваться IDE и интернетом. Код писать не потребуется.
 +
 +
{|  class="wikitable"
 +
|-
 +
! Название события на http://exams.mipt.ru/
 +
! Темы
 +
! Дата
 +
! Длительность
 +
! Результаты
 +
|-
 +
| Программирование на Java. Quiz #1 || Синтаксис Java. Ветвления, циклы и метки. Примитивные типы и объекты в Java. Приведение типов. Inboxing, outboxing. Exceptions. Массивы и коллекции. Строки. Классы (абстрактрые, вложенные, внутренние, анонимные, локальные...), интерфейсы. Класс Object и всё, что с ним связано. Generics, enums (enums as classes). || 25.03, 15:00 || 25 мин. || [http://bit.ly/java-mag21-q1 bit.ly/java-mag21-q1]
 +
|-
 +
|Программирование на Java. Quiz #2 || Тестирование приложений в Java. Сборка приложений. Работа с базой данных. Многопоточность в Java. Аннотации. Spring|| 20.05, 14:30 || 30 мин. || [http://bit.ly/java-mag21-q2 bit.ly/java-mag21-q2]
 +
|}
 +
 +
В случае если вы не сможете написать КР в указанную дату по технической или другой уважительной причине, просьба заполнить [https://forms.gle/6GykmeowdN9bnbJ48 '''форму на дописывание''']. Дописывание состоится 20.05:
 +
* 20.05, 15:10 для 1го Quiz'a
 +
 +
== Экстерн-проект ==
 +
Участие в реальном opensource-проекте под руководством заказчика из индустрии. Для участия в проекте нужно '''уже обладать''' базовыми знаяниями Java core.
 +
 +
Бонусы от участия в проекте:
 +
* участия в проекте достаточно для того чтоб закрыть курс. В этом случае все остальные домашки, контрольные и посещение занятий - по желанию.
 +
* опыт работы в команде (обычно на 1 проект 2-3 человека)
 +
* еженедельные встречи с куратором проекта. Куратор проекта не только руководит выполением и ставит задачи, но и делает code review.
 +
* публикация на Хабре или выступление в профильных Java-конференциях
 +
* запись в Центральном репозитории Maven, где вы будете записаны как Developer проекта.
 +
 +
'''Актуальные темы проектов [https://docs.google.com/document/d/1n4ocgNReB4a2PQfC-VPCSwVc5VeDa6UfWgZBxGgJUkU/edit#heading=h.n0oljbb3mjh6 здесь].'''
 +
 +
Проекты, которые делали ваши предшественники и что из этого получилось, можно посмотреть '''[http://wiki.atp-fivt.org/index.php/Java_2020 здесь]'''.
 +
 +
== Бонус ==
 +
За активность в чате курса и на занятиях можно получить дополнительно +1 балл. Количество студентов, получивших бонус, неограничено.
 +
 +
== Перезачет курса ==
 +
Если вы хотите перпезачесть курс, просьба заполнить [https://forms.gle/S8am2zhK2HEZQtjM6 форму] до '''4.03.2021'''. перезачет по данному курсу ставится в исключительных случаях. В остальном рекомендуется выбрать другой курс из блока.
 +
 +
= Список рекомендуемых материалов =
 +
=== Основная литература ===
 +
==== Java Core ====
 +
# Б. Эккель “Философия Java”
 +
# К. Хорстманн и др. “Core Java 2”
 +
# Br. Goetz “Java concurrency in practice”
 +
# R-G. Urma et al. “Modern Java in action”
 +
# J. Bloch “Effective Java”
 +
# Walls, C: "Spring in Action", Fifth Edition
 +
# Walls, C:"Spring Boot in Action"
 +
 +
Книги 1-3 переведены на русский.
 +
 +
==== 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]
 +
 +
=== Дополнительные материалы ===
 +
* [https://docs.google.com/spreadsheets/d/1zsiDv_jwkDeKxVD_rtYA4mEjBuCan5X0WPkBDcZk9O0 Дополнительные материалы]

Текущая версия на 02:11, 3 мая 2021

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

Материалы занятий

Для доступа к видео нужно зайти в аккаунт @phystech.edu.

Преподаватели

  • Олег Ивченко
  • Иван Федотов

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

  • Смагин Евгений
  • Ахметзянов Талгат

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

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

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

Планируется 5 домашних заданий. Проверка включает 2 этапа:

  1. прохождение тестов в Yandex.Contest (ДЗ-1,2) и / или проверка тестов, написанных вами. Код нужно залить в соотв. репозиторий на gitlab.atp-fivt.org.
  2. code review при условии выполненного п.1. В процессе code review вы получаете Фидбек от проверяющего. Его можно прочитать на странице вашего репозитория с ДЗ (Project -> Activity) или в автоматических письмах от automation@atp-fivt.org. Исправления по code review можно делать в течение 1 месяца после 1-го комментария.

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

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

Под сдачей понимается выполнение 2 факторов:

  • код проходит тесты (в Яндекс.Контесте или необходимое кол-во тестов, кот. написали вы сами)
  • код лежит в gitlab-репозитории
Домашка Мягкий deadline Жёсткий deadline
Simple Java Core 25.02, 23:55 04.03, 23:55
Advanced Java Core & JUnit 25.03, 23:55 01.04, 23:55
JDBC, external export, GitLab CI 22.04, 23:55 29.04, 23:55
Multithreading 06.05, 23:55 13.05, 23:55
Spring 22.05, 23:55 22.05, 23:55

Мини-контрольные

Состоятся 2 контрольные, которые будут проводиться с помощью системы прокторинга http://exams.mipt.ru/. По ссылке доступна инструкция пользователя. На контрольных нельзя пользоваться IDE и интернетом. Код писать не потребуется.

Название события на http://exams.mipt.ru/ Темы Дата Длительность Результаты
Программирование на Java. Quiz #1 Синтаксис Java. Ветвления, циклы и метки. Примитивные типы и объекты в Java. Приведение типов. Inboxing, outboxing. Exceptions. Массивы и коллекции. Строки. Классы (абстрактрые, вложенные, внутренние, анонимные, локальные...), интерфейсы. Класс Object и всё, что с ним связано. Generics, enums (enums as classes). 25.03, 15:00 25 мин. bit.ly/java-mag21-q1
Программирование на Java. Quiz #2 Тестирование приложений в Java. Сборка приложений. Работа с базой данных. Многопоточность в Java. Аннотации. Spring 20.05, 14:30 30 мин. bit.ly/java-mag21-q2

В случае если вы не сможете написать КР в указанную дату по технической или другой уважительной причине, просьба заполнить форму на дописывание. Дописывание состоится 20.05:

  • 20.05, 15:10 для 1го Quiz'a

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

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

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

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

Актуальные темы проектов здесь.

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

Бонус

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

Перезачет курса

Если вы хотите перпезачесть курс, просьба заполнить форму до 4.03.2021. перезачет по данному курсу ставится в исключительных случаях. В остальном рекомендуется выбрать другой курс из блока.

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

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

Java Core

  1. Б. Эккель “Философия Java”
  2. К. Хорстманн и др. “Core Java 2”
  3. Br. Goetz “Java concurrency in practice”
  4. R-G. Urma et al. “Modern Java in action”
  5. J. Bloch “Effective Java”
  6. Walls, C: "Spring in Action", Fifth Edition
  7. Walls, C:"Spring Boot in Action"

Книги 1-3 переведены на русский.

Spring

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

Дополнительные материалы