GenProg14 — различия между версиями

Материал из SEWiki
Перейти к: навигация, поиск
(Лекции)
Строка 16: Строка 16:
 
07.10.2014:
 
07.10.2014:
 
Продолжение моделирования калькулятора ([[Медиа: L14_5_project.zip | проект]]), [[Медиа: L14_5.pdf | Domain implementation, generation]].<br/>
 
Продолжение моделирования калькулятора ([[Медиа: L14_5_project.zip | проект]]), [[Медиа: L14_5.pdf | Domain implementation, generation]].<br/>
 +
 +
 +
== Домашние задания ==
 +
<b>1. [[Generative Programming 14 HW1|Моделирование домена таймеров/секундомеров]]</b>, срок сдачи до 21.10 <br/>
 +
Предполагается генерировать секундомер или таймер по описанию.
 +
Необходимо проанализировать домен задачи и смоделировать его. Вы выступаете и экспертом, и пользователем.
 +
Структуру домена записать на MPS 3.1. <br/>
 +
 +
Ожидаемый результат: проект MPS с описанием домена таймеров/секундомеров (language) и редактором, sandbox с моделью, описывающей "стандартный" секундомер.<br>
 +
 +
Баллы:  <br/>
 +
5 - Домен задачи проработан, редактор позволяет легко вводить описание секундомера или таймера, есть примеры разных описаний <br/>
 +
4 - Домен задачи проработан, есть пример "стандартного" секундомера <br/>
 +
3 - Домен задачи недостаточно проработан или описание домена запутано, но "стандартный" секундомер можно описывать (есть пример) <br/>
 +
2 - Невозможно описать "стандартный" секундомер. <br/>
 +
 +
Два первых сданных задания получают +1 балл.
 +
Проект со сделанным заданием присылать мне на michael.vlassiev@jetbrains.com. Задания, отправленные после 21.10.2014 00:00, получают на 1 балл меньше.<br/>
 +
Зачет будет выставляться по результатам домашних заданий и одной контрольной работы (контрольная работа - с весом 2.0).<br/>
 +
  
 
== Список литературы ==
 
== Список литературы ==

Версия 09:06, 8 октября 2014

Преподаватели - Власьев Михаил Игоревич (mailto:michael.vlassiev@jetbrains.com),

Лекции

09.09.2014: О чем курс

16.09.2014: Введение в MPS, проект mps.demolazy

23.09.2014: Domain engineering

30.09.2014: Практическое занятие. Моделирование калькулятора: MPS проект

07.10.2014: Продолжение моделирования калькулятора ( проект), Domain implementation, generation.


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

1. Моделирование домена таймеров/секундомеров, срок сдачи до 21.10
Предполагается генерировать секундомер или таймер по описанию. Необходимо проанализировать домен задачи и смоделировать его. Вы выступаете и экспертом, и пользователем. Структуру домена записать на MPS 3.1.

Ожидаемый результат: проект MPS с описанием домена таймеров/секундомеров (language) и редактором, sandbox с моделью, описывающей "стандартный" секундомер.

Баллы:
5 - Домен задачи проработан, редактор позволяет легко вводить описание секундомера или таймера, есть примеры разных описаний
4 - Домен задачи проработан, есть пример "стандартного" секундомера
3 - Домен задачи недостаточно проработан или описание домена запутано, но "стандартный" секундомер можно описывать (есть пример)
2 - Невозможно описать "стандартный" секундомер.

Два первых сданных задания получают +1 балл. Проект со сделанным заданием присылать мне на michael.vlassiev@jetbrains.com. Задания, отправленные после 21.10.2014 00:00, получают на 1 балл меньше.
Зачет будет выставляться по результатам домашних заданий и одной контрольной работы (контрольная работа - с весом 2.0).


Список литературы

Generative Programming: Methods, Tools, and Applications
Krysztof Czarnecki, Ulrich Eisenecker
Addison-Wesley Professional; 1 edition (June 16, 2000)
Перевод: Чернецки К., Айзенекер У. Порождающее программирование: методы, инструменты, применение / Пер. с англ. СПб: Питер, 2005.


Domain-Specific Languages
Martin Fowler
Addison-Wesley; 2011


Полезные ссылки

JetBrains MPS: http://www.jetbrains.com/mps
Отчеты об ошибках MPS писать сюда: http://youtrack.jetbrains.com/issues/MPS