Java mag 2023
Содержание
Общие сведения
- Семестр: 10 (5й курс)
- Форма контроля: диф. зачет
Важные ссылки
Материалы
- Видео занятий.
- Слайды презентаций
- Коды семинаров
Команда курса
Преподаватели
- Виктор Петросян
- Иван Пономарев
- Иван Федотов
Учебные ассистенты
- Анатолий Козлов
- Евгений Смагин
- Станислав Сегаль
- Никита Ухов
- Касымалиева Жанель
Критерии получения оценки
Зачет ставится по результатам работы в семестре.
Домашние задания
Планируется 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-репозитории и сделан merge request из ветки с задачей в ветку master.
Домашка | Мягкий deadline | Жёсткий deadline |
---|---|---|
Simple Java Core | 05.03, 23:55 | 12.03, 23:55 |
Advanced Java Core & JUnit | 08.04, 23:55 | 15.04, 23:55 |
Multithreading | 29.04, 23:55 | 06.05, 23:55 |
Spring | 13.05, 23:55 | 20.05, 23:55 |
Алгоритм сдачи ДЗ
У вас в репозитории есть заранее созданные ветки hw1task1, hw1task2, hw1task3, hw1task4 Допустим вы сделали первую задачу из первого д/з. Алгоритм сдачи следующий:
- Получить зеленый ОК этой задачи на Яндекс контесте.
- Создать папку hw1task1
- В эту папку поместить ваше решение.
- Папку с её содержимым закомитить в ветку hw1task1
- Сделать merge request в главную ветку
- Никого не назначать в качетсве assignee. Если вдруг система автоматически кого-то назначит assignee, то удалите его и убедитесь, что это поле пустое.
Доступы
По вопросам доступов и работы Gitlab-сервера пишите в форму или на почту servers@atp-fivt.org.
Мини-контрольные
Состоятся 2 контрольные, которые будут проводиться с помощью системы прокторинга http://exams.mipt.ru/. По ссылке доступна инструкция пользователя. На контрольных нельзя пользоваться IDE и интернетом. Код писать не потребуется.
Название события на http://exams.mipt.ru/ | Темы | Дата | Длительность | Результаты |
---|---|---|---|---|
Программирование на Java. Quiz #1 | Синтаксис Java. Ветвления, циклы и метки. Примитивные типы и объекты в Java. Приведение типов. Inboxing, outboxing. Exceptions. Массивы и коллекции. Строки. Классы (абстрактрые, вложенные, внутренние, анонимные, локальные...), интерфейсы. Класс Object и всё, что с ним связано. Generics, enums (enums as classes). | 01.04, 18:00 | 25 мин. | |
Программирование на Java. Quiz #2 | Тестирование приложений в Java. Сборка приложений. Работа с базой данных. Многопоточность в Java. Аннотации. Spring | 20.05, 18:00 | 20 мин. |
В случае если вы не сможете написать КР в указанную дату по технической или другой уважительной причине, просьба заполнить форму на дописывание. Дописывание состоится:
- 20.05, 18:30 для 1го Quiz'a
Экстерн-проект
Участие в реальном opensource-проекте под руководством заказчика из индустрии. Для участия в проекте нужно уже обладать базовыми знаяниями Java core. В этом сесместре три проекта, ознакомиться можно здесь [1].
Бонусы от участия в проекте:
- участия в проекте достаточно для того чтоб закрыть курс. В этом случае все остальные домашки, контрольные и посещение занятий - по желанию.
- опыт работы в команде (обычно на 1 проект 2-3 человека)
- еженедельные встречи с куратором проекта. Куратор проекта не только руководит выполением и ставит задачи, но и делает code review.
- публикация на Хабре или выступление в профильных Java-конференциях
- запись в Центральном репозитории Maven, где вы будете записаны как Developer проекта.
Регистрация на проект здесь.
Проекты, которые делали ваши предшественники и что из этого получилось, можно посмотреть здесь.
Бонус
За активность в чате курса и на занятиях можно получить дополнительно +1 балл. Количество студентов, получивших бонус, неограничено.
Перезачет курса
Если вы хотите перпезачесть курс, просьба заполнить форму до 16.02.2023. перезачет по данному курсу ставится в исключительных случаях. В остальном рекомендуется выбрать другой курс из блока.
Список рекомендуемых материалов
Основная литература
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
- Евгений Борисов - Spring-потрошитель
- Олег Докука — Строим криптотрейдинг-платформу, используя Spring 5 и Reactor 3
- Максим Гореликов — Дизайн реактивной системы на Spring 5/Reactor