На этом уроке мы реализуем метод Draw (Shape shape) через серию условных операторов. А также создадим функцию для рисования целевого спрайта (снеговика) - Draw (Shape [] shapes). Результат работы программы не изменяется, а вот содержимое кода всё более и более облагораживается.
Дата отправки отчёта:
8 января 2016 г.
Задание выполнено: за
25 мин.
Чему научился:
вспомнил все эти typeof, is, as и их отличия. Любопытно получилось использовать is. Получались интересные эффекты в разном сочетании.
Что было сложным:
не было
Комментарии:
Что значит "использовать switch нельзя"? Кто мешает привести тип к строке и сделать так:
switch (shape.GetType().ToString()) { case "Geometry.Line": Draw((Line)shape); break; case "Geometry.Box": Draw((Box)shape); break; case "Geometry.Circle": Draw((Circle)shape); break; case "Geometry.ColorLine": Draw((ColorLine)shape); break; case "Geometry.ColorBox": Draw((ColorBox)shape); break; case "Geometry.ColorCircle": Draw((ColorCircle)shape); break; }
Научился: Реализовал все что делали.
К Shape.position мы привяжем все наши координаты, и при ее изменении вся фигура будет менять свое местоположение .
Научился: Дальнейшему структурированию проекта Отдельная точка Position нам нужна, для создания дополнительного уровня абстракции (чтобы в дальнейшем оперировать уже только ею)