# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
|
|||
Первый урок. Анализ проекта, создание формы, инициализация графики, рисование окружностей. Отчёт отправил: 4780. Дмитрий Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: 1) рисовать пиксель 2) Refactor->Extract Method Сложности: нарисовать 1 пиксель Комментарии: если нужно нарисовать именно ОДИН пиксель, то подойдет такая запись: graph.FillRectangle(brush, px, py, 1, 1); только надо предварительно создать кисть: Brush brush =(Brush)Brushes.Blue; |
|||||
2 | Движение шарика |
|
|||
Второй урок. Добавление таймера, создание функции для изменения координат, реализация отскока шарика от краёв картинки, учёт размера кружка, стирание старого положения. Отчёт отправил: 4780. Дмитрий Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: 1) анимация движения посредством таймера формы и перерисовки объекта 2) алгоритм отскока шарика внутри прямоугольника Сложности: чтобы шарик отскакивал четко справа Комментарии: у меня условия для отскока справа: px+box_width+sx>=bmp.Width; py+box_height+sy >=bmp.Height; тоже работает нормально. |
|||||
3 | Новый класс Graph |
|
|||
Третий урок Создание класса Graph и перенос в него всех действий с графикой. Отчёт отправил: 4780. Дмитрий Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: 1) разбивать код программы на разные классы для упрощения кода. 2) использовать рефакторинг Сложности: какие методы и свойства вынести из кода формы в класс Graph и как передавать данные между ними. Комментарии: хороший урок) |
|||||
4 | Новый класс Figure |
|
|||
Четвёртый урок На этом уроке мы вынесем всю логику работы с координатами в отдельный класс Pixel и в конце добавим ещё одни шарик в наш "Хранитель экрана". Отчёт отправил: 4780. Дмитрий Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: 1) разделять функционал кода с вынесением методов в отдельный класс Сложности: рефакторинг кода: переопределение переменных и логики программы Комментарии: по идее для множества объектов типа Figure нужно создавать коллекцию объектов? |
|||||
5 | Новый класс Polygone |
|
|||
Пятый урок На этом уроке мы закончим создание хранителя экрана. Мы создадим класс Polygone для хранения многоугольника. Также добавим в класс Graph метод для его рисования. В результате получится забавный анимированный многоугольник + потенциал для дальнейшего развития программы. Отчёт отправил: 4780. Дмитрий Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: 1) использовать конструкции типа: public List<Figure> list { get; private set; } с добавлением в список собственных классов 2) отрисовывать перемещающиеся объекты, состоящие из множества точек Сложности: вращение точки для генерации пятиугольника Комментарии: отличный урок, правда под конец я уже немного запутался во всех созданных классах и методах, и их переопределениях) |
|||||
6 | ПОЛУФИНАЛЬНЫЙ урок |
|
|||
Задание: Записать видео обзор созданного хранителя экрана. Рассказать, понравился ли тебе курс, чему ты научился, что было самым сложным. Отчёт отправил: 4780. Дмитрий Выполнено за 24 час. 00 мин. [Показать отчёт] Научился: немного продвинулся в понимании работы ООП и функций, а также вложенных массивов Сложности: поиск логических ошибок в программе Комментарии: Так и не нашел ошибку, из-за которой после первого полного цикла полигоны начинают задесятеряться. Кроме этого при отрисовке возникают артефакты в виде точек на экране. В целом урок очень понравился, спасибо! Видеообзор: https://youtu.be/1pEtYYvKK8o |
|||||
7 | Форма настроек |
|
|||
Шестой урок На этом уроке мы создадим форму для выбора настроек нашего Хранителя экрана. Можно будет выбрать цвет фона и цвет линий, а также количество вершин. форма будет создана в новом классе Window Forms. Отчёт отправил: 4780. Дмитрий Выполнено за 40 мин. [Показать отчёт] Научился: использование ColorDialog Сложности: все было просто Комментарии: хорошо |
|||||
8 | Применение настроек |
|
|||
Седьмой урок На этом уроке мы добавим кнопку Сохранения настроек и сделаем применение выбранных параметров. Для этого нам нужно будет организовать передачу данных между формами. Для применения всех настроек придётся дорабатывать классы Graph и Figure, писать алгоритм для добавления/удаления вершин и создания случайной фигуры. Придётся дорабатывать Отчёт отправил: 4780. Дмитрий Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: как организовать передачу параметров между формами приложения Сложности: адаптировать код под свою программу Комментарии: ^_^ |
|||||
9 | Использование реестра |
|
|||
Восьмой урок На этом уроке мы будем сохранять параметры в реестре и считывать их оттуда. Функции для работы с реестром вынесем в отдельный статический класс. Сделаем считывание и сохранение всех трёх параметров: цвет фона, цвет линий, количество вершин. Отчёт отправил: 4780. Дмитрий Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: записывать и считывать значения из реестра Сложности: сохранение цвета в реестре Комментарии: :) |
|||||
10 | Параметры командной строки |
|
|||
Девятый урок На этом уроке мы узнаем, как нужно управлять запуском стандартных хранителей экрана. Какие параметры командной строки для этого используются. Добавим анализ аргументов командной строки в свою программу, в зависимости от которых будем открывать либо настройки программы, либо запускать хранитель экрана. Отчёт отправил: 4780. Дмитрий Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: запускать программу с параметрами Сложности: все было понятно Комментарии: :^) |
|||||
11 | Полноэкранный режим |
|
|||
Десятый урок На этом уроке мы переделаем нашу заставку чтобы она работала в полноэкранном режиме. Для этого уберём заголовок, установим аттрибут "поверх всех окон". Создадим ещё один конструктор, которому будем передавать размеры основного экрана. Отчёт отправил: 4780. Дмитрий Выполнено за 30 мин. [Показать отчёт] Научился: устанавливать форму поверх всех окон Сложности: все было просто Комментарии: :) |
|||||
12 | Режим предобзора и установка |
|
|||
Одиннадцатый урок, последний На этом уроке мы закончим создание хранителя экрана. Сделаем самую сложную часть - вывод предобзора в окно вызвавшей программы. Отчёт отправил: 4780. Дмитрий Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: работа с WinAPI Сложности: dll , WinAPI Комментарии: заработало, даже удивительно |
|||||
13 | ФИНАЛЬНЫЙ урок |
|
|||
Задание Высказать свой отзыв об этом курсе записав видеообзор полученной программы. Отчёт отправил: 4780. Дмитрий Выполнено за 30 мин. [Показать отчёт] Научился: =) Сложности: ничего) Комментарии: =) Видеообзор: https://youtu.be/wrAr25O7krQ |
|||||
14 | VIP. Говорящие часы. Запись голоса |
|
|||
На уроке создаём программу для записи звуковых файлов, которые будут использованы для создания говорящих часов. Отчёт отправил: 4780. Дмитрий Выполнено за 3 час. 00 мин. [Показать отчёт] Научился: 1. использовать библиотеку NAudio 2. использовать объект SoundPlayer sp = new SoundPlayer(path + audio_filename) 3. пример использования делегатов Сложности: здесь много новых технологий, это и библиотека NAudio и аудиоплеер и использование делегатов для работы с библиотекой. В общем, непростой пример, но очень функциональный. Комментарии: уже отправлял отчет после вебинара, то ли в чашке кофе, то ли где-то еще, уже не помню, - давно было. |
|||||
15 | VIP. Говорящие часы. Воспроизведение |
|
|||
На уроке пишем программу, которая показывает и говорит текущее время Отчёт отправил: 4780. Дмитрий Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: 1. использование объекта DateTime и преобразование его данных к виду hh:mm:ss 2. использование отдельного класса для разделения функционалов формы и программы 3. ознакомился с многопоточностью на примере воспроизведения звуковых файлов Сложности: многопоточность и делегирование Комментарии: хорошая программа получилась, функциональная. |
|||||
Итого: 15 видеоуроков |
7 час. 19 мин. |
17 чел. | |||
Финалисты: Олюшка, Денис, Дмитрий, Андрей Поляков, Артём, Permitin Alexey, Валерий Жданов, Алексей В., Станислав, Tekashnik, Иван Воронин, Neverwinter 2, Новопашин Владимир, Александр, Yefim, superGrover, MaxB . |