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

Формула программиста
основатель — Волосатов Евгений Витольдович
Вступай в Телеграм чат проекта
Вебинар «Мы начинаем PHP + Yii2» начнётся через 2 дня 16 час. 42 мин.

Коллекция графов / Визуализация процесса

  • На этом уроке мы создадим делегат "Покраска"
    и через него реализуем отображение процесса.
  • Дата отправки отчёта: 18 апреля 2016 г.
  • Задание выполнено: за 45 мин.
  • Чему научился: Немного повторил делегаты
  • Что было сложным: Ждать окончания цикла при задержке 1000
  • Комментарии: А красиво получилось, прям даже очень
  • Оценка видео-уроку:
Отчёт от 8275 за Коллекция графов / Визуализация процесса




Оцени работу

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


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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.


Научился: Как и было предложено в виде дополнительного задания на прошлом уроке, я самостоятельно сделал отображение алгоритма. Реализация отображения этого алгоритма мне не очень понравилась, так как тут даже отображение не совсем точное. Первым делом алгоритм должен все вершины перекрасить в белый цвет, чего не было отображено. В свою очередь, я изменил базовый цвет с белого на бежевый, что бы этот момент был виден, так как он входит в алгоритм и упускать его не логично. Во вторых если во время отображения захотеть выйти или же перейти к другому графу, то будет ошибка. И наконец, класс граф, нужен для хранения графа и вызов из него делегата для отрисовки на форме просто не логично (я конечно понимаю что так тоже работает, но если мы используем ООП, то тогда класс должен отвечать за что то одно, так как если кто-то возьмет наш текущий код, то явно не сразу будет понятно где именно происходит отрисовка). Как я уже и писал в предыдущем уроке, лучше всего добавить отдельный класс для отрисовки, и уже в нем рисовать. А еще лучше всего, как по мне, вначале пройти алгоритм, а потом сделать отрисовку всех его результатов (так как работа алгоритма займет малое время, то это оптимальное решение).
Трудности: Сложностей не было



Научился: Наслаждаться поиском в ширину
Ого, я знаю что-то, чего не знаете вы =) Просто вместо panel1.Refresh(); Напишите Application.DoEvents(); И программа сама отобразит своё текущее состояние (и не нужно вообще ничего перерисовывать). =)