Курсы для программистов

Формула программиста
основатель — Волосатов Евгений Витольдович
Вступай в Телеграм чат проекта

Хранитель экрана

11 уроков по созданию полноценного хранителя экрана.
На первых пяти уроках мы создаём анимацию геометрических фигур,
На последующих уроках добавляем
редактирование параметров,
их сохранение в реестре,
полноэкранный режим работы хранителя экрана,
создание предобзора и
установка собственноручносозданной заставки
в качестве системного хранителя экрана.

Основные темы, рассматриваемые на этом курсе:
-Инкапсуляция.
-Работа с реестром.
-Рисование в C#.
-Простые алгоритмы движения объектов.

Объём: 14 уроков.

Хочу купить!

Купить в рассрочку за мегахеши

Цена: 1200 p.


Список уроков | фото | видео

# Название видеоурока Решило Рейтинг Доступ
1 Создаём графику 00:28:12 122 чел. ★ 4.9 Done
  Первый урок.
Анализ проекта, создание формы, инициализация графики, рисование окружностей.

Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Для меня была новой информация о том, как установить иконку для экзешника программы. Представленные в уроке классы были мне уже известны, доводилось с ними работать пару раз. Однако данный урок был очень полезным для расширения знаний и прокачки навыков в работе с представленными классами. 
Сложности: Сложностей не возникло. 
Комментарии: Все хорошо и понятно объяснено. 
2 Движение шарика 00:31:11 108 чел. ★ 4.9 Done
  Второй урок.
Добавление таймера, создание функции для изменения координат, реализация отскока шарика от краёв картинки, учёт размера кружка, стирание старого положения.

Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Была новой информация о классе Debug и его практического использования; Полезные практические советы по написанию кода(работоспособность кода, затем рефакторинг) ; Свойство формы - DoubleBuffered  
Сложности: На моменте с расчетом координат на движении шарика пыталась рассчитывать их самостоятельно, чтобы разобраться с принципом перемещения. Поначалу мое решение совпало, но потом с дальнейшем усовершенствовании алгоритма стало ясно что вариант представленный в видеоуроке все же оптимальнее.  
Комментарии: Было интересно наблюдать как усовершенствовался алгоритм по перемещению. 
3 Новый класс Graph 00:29:03 87 чел. ★ 4.9 Done
  Третий урок
Создание класса Graph и перенос в него всех действий с графикой.
Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 10 мин. [Показать отчёт]
Научился: Поиск с заменой в документе, синтаксис вызова конструктора того же класса в том же классе(подобным занималась только при наследовании одного класса другому), характеристика обозначений объектов в обозревателе решений, работа с отладкой. 
Сложности: Возникли небольшие проблемы с включением режима отладки, но потом довольно быстро разобралась. 
Комментарии: Отличный урок, замечательно представлены возможности рефакторинга во всей красе. 
4 Новый класс Figure 00:31:21 77 чел. ★ 4.9 Done
  Четвёртый урок
На этом уроке мы вынесем всю логику работы с координатами в отдельный класс Pixel и в конце добавим ещё одни шарик в наш "Хранитель экрана".

Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Принципам рефакторинга. 
Сложности: В этом уроке сложностей как таковых не возникло. Даже удалось сразу избежать маленьких ошибок, которые бывало допускались в видеоуроке) 
Комментарии: Очень полезный видеоурок в плане построения и организации кода. 
5 Новый класс Polygone 00:30:58 69 чел. ★ 4.9 Done
  Пятый урок
На этом уроке мы закончим создание хранителя экрана.
Мы создадим класс Polygone для хранения многоугольника.
Также добавим в класс Graph метод для его рисования.
В результате получится забавный анимированный многоугольник + потенциал для дальнейшего развития программы.
Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 10 мин. [Показать отчёт]
Научился: Работа с полигонами. Возможности метода DrawLine(). 
Сложности: Расчет координат для звездочки) 
Комментарии: Безумно понравился урок и полученный результат. Появилось множество идей по использованию подобного алгоритма. 
6 ПОЛУФИНАЛЬНЫЙ урок 00:23:23 45 чел. ★ 4.9 Done
  Задание:
Записать видео обзор созданного хранителя экрана.
Рассказать, понравился ли тебе курс, чему ты научился, что было самым сложным.

Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Опыт создания персональных обзоров на свои программы. 
Сложности: Рассказать подготовленный текст на видео. Наверно пока единственный видеоурок который вызвал затруднения. 
Комментарии: Ссылка на мой обзор http://www.youtube.com/watch?v=dM8FAmIkMpk&feature=youtu.be 
7 Форма настроек 00:23:24 38 чел. ★ 5 Done
  Шестой урок
На этом уроке мы создадим форму для выбора настроек нашего Хранителя экрана.
Можно будет выбрать цвет фона и цвет линий, а также количество вершин.
форма будет создана в новом классе Window Forms.
Отчёт отправил: 6289. Екатерина Выполнено за 45 мин. [Показать отчёт]
Научился: Компонент colorDialog, новые возможности использования компонента label, задание свойств одновременно нескольким компонентами. 
Сложности: Возникли небольшие затруднения с установлением свойств несколько выбранных компонентов. 
Комментарии: Все отлично) 
8 Применение настроек 00:29:52 38 чел. ★ 5 Done
  Седьмой урок
На этом уроке мы добавим кнопку Сохранения настроек
и сделаем применение выбранных параметров.
Для этого нам нужно будет организовать
передачу данных между формами.
Для применения всех настроек придётся дорабатывать
классы Graph и Figure, писать алгоритм
для добавления/удаления вершин
и создания случайной фигуры.
Придётся дорабатывать
Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Использование trackBar, наглядная возможность передачи данных между формами, использование рандома(очень редко доводилось применять). В целом могу сказать что урок информативен во всем. 
Сложности: Возникали ошибки с заменой цвета в коде (немного невнимательна была на этом моменте). 
Комментарии: В конструкторе SettingsForm реализовывала вариант с try catch. Тестирование прошел) Смеялась над "вот так вот никогда не делайте, ребята, как я сейчас делаю":D 
9 Использование реестра 00:29:45 38 чел. ★ 5 Done
  Восьмой урок
На этом уроке мы будем сохранять параметры в реестре и считывать их оттуда.
Функции для работы с реестром вынесем в отдельный статический класс.
Сделаем считывание и сохранение всех трёх параметров:
цвет фона, цвет линий, количество вершин.
Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 40 мин. [Показать отчёт]
Научился: Возможность работы с реестром программно, директива Microsoft.Win32, методы для работы с цветом: FromArgb() и ToArgb(), использование метода int.Parse() для преобразования переменной (обычно использовала Convert.To...()). 
Сложности: Сложностей не возникало. 
Комментарии: Когда в реестре background вводила значение 777777, предыдущее положение фигуры как будто бы не удалялось, а если такое значение ввести в foreground, то фигуры как-будто бы нет. Так понимаю, я превысила допустимый диапазон цвета. Буду благодарна, если кто-то в комментариях объяснит точно этот процесс. 
10 Параметры командной строки 00:22:41 36 чел. ★ 5 Done
  Девятый урок
На этом уроке мы узнаем,
как нужно управлять запуском стандартных хранителей экрана.
Какие параметры командной строки для этого используются.
Добавим анализ аргументов командной строки
в свою программу, в зависимости от которых
будем открывать либо настройки программы,
либо запускать хранитель экрана.
Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Открытие окна команд для конкретной папки, работа с аргументами командной строки, характеристика этих параметров, работа с аргументами командной строки в свойствах через visual studio. 
Сложности: Как таковых сложностей не возникало, но когда удалили событие MouseDoubleClick(), удивлялась почему добавление новых вершин работало корректно. Но потом вспомнила что в методе InitFigure() было учтено добавление вершин. 
Комментарии: Полезный и практичный урок. 
11 Полноэкранный режим 00:13:58 36 чел. ★ 5 Done
  Десятый урок
На этом уроке мы переделаем нашу заставку чтобы она работала в полноэкранном режиме.
Для этого уберём заголовок, установим аттрибут "поверх всех окон".
Создадим ещё один конструктор, которому будем передавать размеры основного экрана.
Отчёт отправил: 6289. Екатерина Выполнено за 25 мин. [Показать отчёт]
Научился: Атрибут "поверх всех окон" - TopMost, структура Rectangle, получение границ области отображения - Screen.PrimaryScreen.Bounds. 
Сложности: Сложностей не возникло. Не знала, правда, что в отчет в качестве скринов показывать) 
Комментарии: Очень понравился полученный результат. 
12 Режим предобзора и установка 00:25:51 36 чел. ★ 5 Done
  Одиннадцатый урок, последний
На этом уроке мы закончим создание хранителя экрана.
Сделаем самую сложную часть - вывод предобзора в окно вызвавшей программы.

Отчёт отправил: 6289. Екатерина Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Вывод предобзора в окно вызвавшей программы, установка своего хранителя экрана, метод Trim(), некоторые команды консольной строки 
Сложности: Была пара ошибок из-за невнимательности с аргументами функции Main(). 
Комментарии: Безумно понравился полученный результат! Прекрасное завершение видеокурса. 
13 ФИНАЛЬНЫЙ урок 00:23:23 32 чел. ★ 4.9 Done
  Задание
Высказать свой отзыв об этом курсе
записав видеообзор полученной программы.

Отчёт отправил: 6289. Екатерина Выполнено за 40 мин. [Показать отчёт]
Научился: Практика в формулировании текста для видеобзора. 
Сложности: Найти подходящее время для записи видео, чтобы не мешали посторонние звуки, подбор текста. Однако, после полуфинального обзора в этом же видеокурсе, финальный обзор дался сравнительно легко. 
Комментарии: Огромное спасибо Евгению Витольдовичу за такой замечательный видеокурс и за создание проекта videosharp.info!  
Видеообзор: http://www.youtube.com/watch?v=9mxVsbjri3c&feature=youtu.be
14 VIP. Говорящие часы. Запись голоса 00:57:32 30 чел. ★ 5 $
  На уроке создаём программу для записи звуковых файлов,
которые будут использованы для создания говорящих часов.
15 VIP. Говорящие часы. Воспроизведение 00:38:41 28 чел. ★ 5 $
  На уроке пишем программу,
которая показывает и говорит текущее время
  Итого:   15 видеоуроков общей продолжительностью 7 час. 19 мин. 14 чел. ★ 4.96  
  Финалисты:   Олюшка,   Денис,   Дмитрий,   Андрей Поляков,   Артём,   Permitin Alexey,   Валерий Жданов,   Алексей В.,   Станислав,   Tekashnik,   Иван Воронин,   Neverwinter 2,   Новопашин Владимир,   Александр .

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




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

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

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

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


Научился: Еще раз записал видеообзор своей, теперь уже готовой, программы.
Замечаний нет.


Научился: Записывать видеообзор
Курс отличный. Все начинается с создания примитивных фигур. Лектор рассказывает очень подробно о каждой строке кода. В итоге студент может научится создавать полигон с любым количеством углов. Также можно научить этот полигон двигаться и изменять свое направление при достижении границы экрана. После лектор сопровождает студента по пути создания стандартного скринсейвера из любого анимационного материала. Учит работать в командной строке с параметрами и заканчивается курс незаметно уже созданным классическим скринсейвером, который можно запускать стандартными средствами операционной системы.