Вие участвате в разработката на приложение наречено "Dev Designer", чиято цел е да предостави лесен и удобен начин за създаване на нови потребителски контроли от страна софтуерните разработчици. Приложението ще представлява дизайнер, в който чрез drag-and-drop да може лесно да се създават нови контроли. Разработвания дизайнер трябва да:
- Позволява създаване на нов проект с контроли.
- Позволява добавяне на нова контрола в проекта.
-
Има набор от готови шаблони за комбинация от контроли в две разновидности
- Windows контроли
- Уеб контроли
- Позволява контролите да се влагат една в друга без ограничение по тип или дълбочина на влагането .
- Позволява да прекопираме дадена контрола и да използваме нейното копие.
- Да поддържа Undo/Redo операции .
- До позволява съхраняването на даден проект, чиято разработка не е приключена и отварянето му на по-късен етап.
Поради спецификата на курса при писането на курсовия проект от вас не се очаква да имплементирате цялата функционалност. Достатъчно е, например за проектите които имат някакъв изход (чертаят, пишат по файловата система), да изписвате на конзолата информативно съобщение (например “Draw Line form Point(1,4) to Point(4,12)” ако трябва да начертаете права между две точки). Това което се изисква е да напишете типовете (класове, структури и интерфейси) с подходящите методи и член данни, връзките между тях, да можете да се аргументирате за избора си на шаблони и да можете да дадете пример как ще бъдат използвани написаните приложения за да се изпълни някое от изискванията.