Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
Олимпиада по средам
Перейти к решению задачи
Вебинар «Решение олимпиадной задачи "Средний сарай"» начнётся через 15 час. 22 мин.

Теория ООП / Спрайт для Снеговика

  • На этом уроке мы создадим новый класс - Sprite, в котором будет хранится список всех фигур, из  которых строится графический объект, чтобы в основной программе мы могли оперировать сразу спрайтами, а не их составными элементами.
  • Дата отправки отчёта: 16 мая 2015 г.
  • Задание выполнено: за 30 мин.
  • Чему научился: Наследованию
  • Что было сложным: graph тут и там, запутался
  • Комментарии: всё замечательно
  • Оценка видео-уроку:
Отчёт от 3397 за Теория ООП / Спрайт для Снеговика




Оцени работу

 
Сохранить страницу:


Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Научилась работать с коллекциями и циклом foreach. Узнала о разнице между абстрактным классом и интерфейсом.
Трудности: Сложностей не возникло.
Всё отлично.
Научился: Создавать сложные фигуры из примитивов _более правильным_ способом через коллекции.
Трудности: Понимание SetGraphics при создании фигуры и при добавлении в коллекцию.
Я так и не понял, зачем 2 раза делать public void AddShape(Shape shape) { shape.SetGrapphics(graph); shapes.Add(shape); } и snowman2 = new Sprite(); snowman2.SetGrapphics(graph); Закомментировал snowman2.SetGrapphics(graph); Выходит исключение, что ресурс graph пустой в этой функции. override public void Draw() { graph.DrawEllipse( pen, corner.x, corner.y, width, hight); } Выходит это для каждого примитива создается ресурс graph со своими настройками, линия там или круг, красный или зеленый. Но как по мне, то в основной инициализации snowman2 = new Sprite(); snowman2.SetGrapphics(graph); вторая строка лишняя. Оно должно быть скрыто и инициализироваться автоматом при создании примитива. Вобщем пока упрощали, то опять все усложнилось так, что забыли что и зачем нужно. (типа тут смайлик) Посмотрим, что там дальше будет. Может в следущих уроках как раз моя идея будет реализована.