Домашние задания, осень 2014, 244 группа
В табличке:
пусто - задача не сдавалась-1 — задача нагло списана и будет заменена другой
0 — задача не зачтена
0.5 — задача решена не до конца, либо хочется что-то изменить
1 — задача зачтена
- — задача для желающих, к сдаче не обязательна
Работы, выделенные зеленым, зачтены полностью. Работы, зачтенные для всех студентов, скрываются как малоинформативные.
Фамилии, выделенные зеленым, обозначают людей, набравших нужное для зачета число решенных задач.
Студенты 244 группы
>Вольные слушатели
Условия задач:
Домашнее задание 1. 08.09.2014
Конспект парыПрезентация
- Нарисовать диаграмму классов для игры "реверси", с несколькими видами "ботов", которые могли бы играть вместо человека. Диаграмма должна быть довольно подробным проектом системы. Реализовывать этот проект не нужно.
- Нарисовать диаграмму состояний для класса MicrowaveOven, реализующего ПО СВЧ-печи. Реализовывать проект также не нужно.
Домашнее задание 2. 15.09.2014
Конспект парыПрезентация
- Смоделировать работу локальной сети:
a) в сети есть несколько компьютеров, связанных друг с другом (каким образом - можно задавать, например, матрицей смежности);
b) на каждом компе стоит ОС (Windows, Linux, etc...);
c) в сети гуляют вирусы, так что для каждой машины есть ненулевая вероятность заразиться (вероятность зависит от типа ОС), заражаются компьютеры, непосредственно соединённые с заражёнными;
d) заражения (и проверки, заразился компьютер или нет) происходят дискретно - по ходам.
Требуется периодически выводить состояние сети.
Домашнее задание 3. 06.10.2014
- Есть связный неориентированный граф, в вершинах графа находится несколько роботов. каждый ход роботы могут телепортироваться, перепрыгивая через одну вершину. Например, если граф выглядит так: (R)----(*)----(*), то на следующем ходу робот может остаться на месте, а может телепортироваться: (*)----(*)----(R). Если два или больше роботов телепортируются в одну вершину графа, они самоуничтожаются. Задача --- по заданному графу и заданному начальному расположению роботов определить, существует ли такая последовательность телепортаций, при которой все роботы самоуничтожатся.
Список паттернов на зачет
- Composite
- Model/View/Controller
- Strategy
- Decorator
- Abstract Factory
- Builder
- Factory Method
- Prototype
- Singleton
- Adapter
- Facade
- Proxy
- Chain of Responsibility
- Interpreter
- Iterator
- Flyweight
- Mediator
- Memento
- Observer
- State
- Template Method
- Bridge
- Command
- Three-tier architecture
- Broker
Темы для докладов
Паттерны:
- Builder (Сергей Анкаренко)
- Factory Method (Артемий Безгузиков) Презентация
- Prototype (Илья Смирнов) Презентация
- Singleton (Семен Юрьев) (Презентация)
- Adapter (Илья Смирнов) Презентация
- Facade (Илья Никифоров) Презентация
- Proxy (Антон Гуликов) (Презентация)
- Chain of Responsibility (Данила Малютин) Презентация
- Interpreter (Данила Малютин) Презентация
- Iterator (Артемий Безгузиков) (Презентация)
- Flyweight (Михаил Марюфич)
- Mediator (Сергей Анкаренко)
- Memento (Михаил Марюфич)
- Observer (Михаил Марюфич) Презентация
- State (Эльдар Гиниятуллин) (Презентация)
- Template Method (Эльдар Гиниятуллин) Презентация
- Bridge (Антон Гуликов) Презентация
- Command (Илья Смирнов)
- Resource Acquisition Is Initialization, Pointer To Implementation (Данила Малютин) Презентация
- Null Object (Эльдар Гиниятуллин)
- Specification (Анна Скачкаускайте) Презентация
- Three-tier architecture (Анна Скачкаускайте) Презентация
- Inversion of Control (Анна Скачкаускайте)
- Layered Architecture (Семен Юрьев) Презентация
- Model View ViewModel (Илия Кузьмина)
- Pipes and Filters (Илия Кузьмина)
- Blackboard (Николай Вьюгинов)
- Broker (Николай Вьюгинов) Презентация
Анти-паттерны:
- Call super, Circular dependency (Анна Скачкаускайте)
- Constant interface, God object, Yo-yo problem (Антон Гуликов)
- Busy waiting, Error hiding (Илия Кузьмина) Презентация
- Loop-switch sequence, Magic numbers, Magic strings
- Hardcoding, Softcoding (Николай Вьюгинов) Презентация
- Functional Decomposition
- Анти-паттерны Test Driven Development