Альтернативные языки для JVM осень 2017

Материал из SEWiki
Перейти к: навигация, поиск

Kotlin

Преподаватель: Жарков Д.

Репозитрий с домашками: github.com/java-course-au/kotlin-course

Формат сдачи

Указан в лекции 1. Актуальная версия лежит в репозитории.

Примерная схема (детали про проверку/доработку лучше смотреть в репозитории):

  1. Создаем форк репозитория github.com/java-course-au/kotlin-course
  2. Пишем решение в ветке, соответствующей заданию
  3. Делаем pull request в оригинальный репозиторий (в соответствующую ветку, не в master) с темой Kotlin. ДЗ 05, Иванов Иван (заменить номер ДЗ, имя и фамилию)
  4. В комментарии к pull request упоминаем @dzharkov

Актуальное условие задания доступно в Readme в репозитории в ветке, соответствующей заданию.

Если есть вопросы --- можно создать issue в оригинальном репозитории и упомянуть в нём @dzharkov.

На оценку влияет

  • Соблюдение формата сдачи
  • Соответствие кода стандартным Java coding conventions (где это имеет смысл) и Kotlin style guides
  • Выполнение формальных требований задания
  • Отсутствие предупреждений компилятора и инспекций в IDEA (их по-хорошему не должно быть)
  • Общая аккуратность решения
  • Повторение предыдущих ошибок
  • Количество итераций сдачи

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

  • Надо написать какой-то интерпретатор какого-то языка.
  • Указано в слайдах лекции 2 и в ветке 02-fun-interpreter.
  • Soft deadline отсутствует.
  • Hard deadline (полный балл): 12.11.2017 23:59.

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

  • Надо сдать какую-нибудь задачу по алгоритмам.
  • Указано в слайдах лекции 1 и в ветке 01-just-for-fun.
  • Soft deadline (полный балл): 29.10.2017 23:59.
  • Hard deadline (половина баллов): 05.11.2017 23:59.

Scala

Преподаватель: Козлов А.

Страница курса с домашками и кодом: github.com/adkozlov/scala-2017

Формат сдачи домашних заданий

Базовый алгоритм:

  1. Создать свой репозиторий на Github, можно приватный. Скорее всего, можно создать один репозиторий на курс.
  2. Выполнить в нём задание. До начала шага 3 разрешается делать `git push --force`, после - не разрешается.
  3. Создать pull request в своём же репозитории и поставить @adkozlov _ревьювером_.

Склонированый локально проект должен без ошибок открываться IntelliJ IDEA. Это может быть любая система сборки: Maven, Gradle, Sbt, хоть Eclipse. Несобирающиеся проекты не смотрят :)

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

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

Условие на GitHub.

До пары 11.09.2017 можно сдавать на полный балл.

До пары 18.09.2017 можно сдавать на половину от полного балла.

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

Условие на GitHub.

Необязательное. Можно сдавать до пары 18.09.2017 и получать дополнительные баллы.

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

Условие на GitHub.

До пары 25.09.2017 можно сдавать на полный балл.

До пары 02.10.2017 можно сдавать половину от полного балла.

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

Условие на GitHub

До пары 02.10.2017 можно сдавать на полный балл.

До пары 09.10.2017 можно сдавать половину от полного балла.

Разное

Очень приятный тьюториал, где буквально в один небольшой пассаж просто и ясно доносится сразу куча специфических понятий вроде sealed trait`ов, case class`ов и прпрпр.