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

Формула программиста
основатель — Волосатов Евгений Витольдович
Графика + Циклы = Мастерство
Вебинар «Создание прикладных программ на C#» начнётся через 21 час. 32 мин.

Теория ООП / Рисователь снеговиков

  • На этом уроке мы реализуем метод Draw (Shape shape) через серию условных операторов.
    А также создадим функцию для рисования целевого спрайта (снеговика) - Draw (Shape [] shapes).
    Результат работы программы не изменяется, а вот содержимое кода всё более и более облагораживается.
  • Дата отправки отчёта: 18 октября 2015 г.
  • Задание выполнено: за 20 мин.
  • Чему научился: Познакомился  с методом GetType. Интересно еще то, что для вызова метода рисования нужной фигуры (например, окружности), нужно использовать явное приведение типов.
  • Что было сложным: Ничего сложного
  • Комментарии: Оказывается не так сложно было реализовать функцию Draw для рисования фигуры. С методом GetType() я был знаком (знаю, что такой есть), но синтаксис не очень хорошо знаю. Очень часто применяется этот метод (GetType), когда работает с элементами на форме, то есть когда нам нужно выполнить одинаковое действие для всех элементов на форме (панели, picturebox'е или еще где-нибудь). 
    Переменная position, объявленная в классе Shape, понадобится нам для дальнейшей работы. С помощью нее мы сможем перемещать фигуру, изменять ее размеры и поворачивать (изменяя угол поворота).
  • Оценка видео-уроку:
Отчёт от 2773 за Теория ООП / Рисователь снеговиков




Оцени работу

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

1. Евгений Волосатов
Евгений Волосатов
ответить
→  Никита  # Теория ООП / Рисователь снеговиков / 2015-10-18 10:21

Отличное понимание!


  • Отчёт оценивали:
    6282Михаил+1   4004Елена+1   5193Сергей+1   6368Aleksej Vascenko+1   1947Denis+1   7303Игорь+1   764618+1   3747Сергей+1   1Евгений Волосатов+1   6919Anton Sozykin+1   5419Роман+1   459Сергей Сергеевич+1   2146Иван+1   6391Владимир+1   6203Николай (nick27m)+1   Посетитель+1   Посетитель+1   76307+1   2773Никита+1   76329+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Углубил знания о наследовании.
Трудности: ВСЁ!!! Всё было сложным! Понять как всё это работает!!!
Это кошмар какой-то! Я даже не знаю, как это назвать. Мы организовываем класс Shape от которого наследуем всё, при этом в классе ничего нет. То есть сёркл, лайн и бокс это фигуры, а шэйп - это как бы профигура (по аналогии с прокариотами), никакая фигура. И затем мы делаем массив никаких фигур! snowman1 = new Shape[7]; Далее мы рисуем снеговика Draw(snowman1); С одной стороны всё хорошо, Рисуем (снеговик). все четко и понятно. НО с другой стороны мне надо держать в голове, что сноумэн1 это массив, и что будет вызвана функция Draw(Shape[] shapes) . Ага. А shapes[j] - это уже какой то элемент массива, и уже с ним будет вызвана другая функция, то есть строка Draw(shapes[j]); вызовет Draw(Shape shape). которая в свою очередь будет вызывать функции для рисования отдельных фигур. Я на это долго смотрел. Дооолго смотрел. ..... ..... .... Нет, ну вот честно. Массив никаких фигур, а затем мы вызываем функцию, которая отрисовывает поэлементно, по дороге определяя тип... А-а-а-а.... Ощущение, что в черепную коробку засунули гантелю, и она [коробка] стала очень тяжёлой...
Научился: Работать с методом GetType() для определения типов классов-наследников.
Shape.position плнадобиться для объединения всех фигур снеговика относительно базовой координаты.