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

Формула программиста
основатель — Волосатов Евгений Витольдович
Вебинар «Мир! Труд! Май! Для программиста.» начнётся через 21 час. 01 мин.

Теория ООП / Интерфейс. Запускаем кружки на площадку!

  • На этом уроке мы настроим нашу форму,
    напишем несколько волшебных строчек,
    и ... программа заработает!!!
    У нас будет много-много кружков на экране 8-о
  • Дата отправки отчёта: 10 марта 2016 г.
  • Задание выполнено: за 30 мин.
  • Чему научился: Научился создавать запускать экземпляры объектов.
  • Что было сложным: Пока все понятно.
  • Комментарии: Большое спасибо! Замечаний нет
  • Оценка видео-уроку:
Отчёт от 7645 за Теория ООП / Интерфейс. Запускаем кружки на площадку!




Оцени работу

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

  • Отчёт оценивали:
    9237Mais+1   4889Валера Луцевич+1   9427Иван Алексеевич+1   8886Михаил Ермишин+1   6925Артём+1   791Валерий Жданов+1   5760Мариша +1   459Сергей Сергеевич+1   9332Dima0   3506Алексей|BrisK|Кривицкий+1   1Евгений Волосатов+1   4467Alcatraz+1   6452Кирилл Шмойлов+1   8275Tekashnik+1   4992Николай+1   3376Елена+1   3625Михаил0   4182Farid+1   4395Денис+1   5649Максим Лапшинов+1   689Igorenzia+1   2146Иван+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: усложнив задачу, я теперь твердо уяснил много моментов
Трудности: сочинять код, когда нет готового решения
Решил себе усложнить задачу: сделать так, чтобы кружки друг на друга не накладывались. Идея была сразу: нужно сохранять в список все созданные кружки и при создании новых проверять, чтобы край нового круга не попадал внутрь уже имеющихся. А вот в реализации обнаружил для себя немало неочевидных тонкостей в обычном программировании, которые не сразу удалось учесть. В итоге, в моей форме слева реализация по Витольдовичу, справа с моим усложнением. В процессе возникли такие вопросы: 1. Пусть у нас есть некий класс с методом Show(). Мы наследуем новый класс, в котором тоже будет метод Show(), который усовершенствует метод Show() базового класса, т.е. в новом Show() будет такой же код, как в базовом Show() плюс еще. Возможно ли в C#,а также в других языках, сделать так, чтобы при создании Show() в производном классе - вызвать код из базового Show() наподобие, как это можно сделать при вызове конструкторов через base? 2. Опять эта же ситуация: базовый класс с Show () и производный с Show (). Если не писать virtual и override, то код компилируется, но пишется предупреждение, мол действительно ли вы там собирались затереть базовый Show (), сделайте это как-то очевидно. Почему существует такая ситуация? т.е. почему не запрещено без слов virtual и override затирать базовый метод? А еще можно написать virtual в базовом, а в производном ничего не писать или даже написать virtual, и будет опять просто предупреждение о том, что метод затрется. Почему не запрещено это? Наблюдение. Возникла необходимость сделать метод, чтобы он был доступен везде, кроме производного класса (похожая ситуация еще могла бы быть: сделать метод в производном классе доступным везде, кроме базового класса). Сначала я задумался, какой поставить модификатор доступа, но потом опомнился, что для такой ситуации нужен полиморфизм. И отсюда я ощутил, что, пожалуй, часть понятия полиморфизм можно понимать, как более хитрый модификатор доступа.
Трудности: Почему-то не кружки рисуются не на всём PictureBox,там как-будто есть невидимая граница для рисования...
:)