Поиск
 
 

Результаты :
 


Rechercher Расширенный поиск

Кто сейчас на форуме
Сейчас посетителей на форуме: 1, из них зарегистрированных: 0, скрытых: 0 и гостей: 1

Нет

[ Посмотреть весь список ]


Больше всего посетителей (9) здесь было Вс Фев 11, 2018 12:54 pm
Самые активные пользователи за неделю
Ярослав
 


[П 140217] Домашние задания

Перейти вниз

[П 140217] Домашние задания

Сообщение автор Ярослав в Пн Май 14, 2018 11:50 am

Д/з №01 (14 мая 2018)
Принципы SOLID
Срок: по 20 мая

1. Надо напистаь программу, которая берёт байты из источника и складывает их в хранилище. Источники могут быть разными: например, ввод символов по одному с клавиатуры, чтение из файла, получение по сети. Хранилища тоже могут быть разными: запись в файл, печать на экран, отправка на принтер.

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

Реализовать работу программы с хотя бы двумя устройствами ввода (клавиатура, файл) и двумя устройствами вывода (экран, файл).

2. К проекту приложите диаграмму классов UML, показывающую устройство принятой вами архитектуры.
avatar
Ярослав
Admin

Posts : 514
Join date : 2016-12-21
Location : Москва

Посмотреть профиль http://itstep.forum2x2.ru

Вернуться к началу Перейти вниз

Re: [П 140217] Домашние задания

Сообщение автор Ярослав в Ср Май 16, 2018 11:54 am

Д/з №02 (16 мая 2018)
Абстрактная фабрика
Срок: по 22 мая

1. Нашей компании нужно написать редактор текста, редактор изображений и редактор музыки. В трёх приложениях будет очень много общего: главное окно, панель инструментов, команды меню будут весьма схожими. Чтобы не писать повторяющуюся основу трижды, вам поручили разработать основу (каркас) приложения, которую можно использовать во всех трёх редакторах.

На совещании была принята следующая архитектура:

• Есть базовый интерфейс IDocument, представляющий документ неопределённого рода. От него впоследствии будут унаследованы конкретные документы: TextDocument, ImageDocument, MusicDocument... Интерфейс IDocument перечисляет общие свойства и операции для всех документов.

• При нажатии пукнтов меню File -> New и File -> Open требуется создать новый экземпляр документа (конкретного подкласса). Однако каркас не должен быть привязан ни к какому конкретному виду документов.

• Нужно создать фабричный интерфейс ICreateDocument. Этот интерфейс содержит два абстрактных фабричных метода: CreateNew и CreateOpen, оба возвращают экземпляр IDocument

• Каркас оперирует одним экземпляром IDocument и одним экземпляром ICreateDocument. Какие конкретные классы будут подставлены сюда, определяется во время запуска приложения.

Требуется: создать перечисленные классы. Создать каркас приложения — окно редактора с меню File. В меню File реализовать пункты New, Open, Save, Exit.

2. Продемонстрировать работу каркаса на примере текстового редактора. Потребуется создать конкретный унаследованный класс TextDocument и фабрику для него — CreateTextDocument.
avatar
Ярослав
Admin

Posts : 514
Join date : 2016-12-21
Location : Москва

Посмотреть профиль http://itstep.forum2x2.ru

Вернуться к началу Перейти вниз

Re: [П 140217] Домашние задания

Сообщение автор Ярослав Вчера в 12:03 pm

Д/з №04 (23 мая 2018)
Порождающие паттерны
Срок: по 29 мая

1. В «Героях меча и магии» армия состоит из 6 ячеек. В каждой ячейке находится один вид войск, описываемый названием, количеством единиц и силой в бою, например:

• Гоблины, 100 штук, слабые (1 урон)
• Орки, 20 штук, средние (5 урона)
• Дракон, 1 штука, сильный (25 урона)

Напишите класс, представляющий собой армию. Используйте паттерн Строитель, чтобы создавать экземпляры армий:

• Создаётся пустая армия
• Каждая ячейка заполняется отдельным вызовом функции
• Есть метод, завершающий изготовление армии
avatar
Ярослав
Admin

Posts : 514
Join date : 2016-12-21
Location : Москва

Посмотреть профиль http://itstep.forum2x2.ru

Вернуться к началу Перейти вниз

Re: [П 140217] Домашние задания

Сообщение автор Спонсируемый контент


Спонсируемый контент


Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения