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

Формула программиста
основатель — Волосатов Евгений Витольдович
1-2-3 мая - Создай online игру!

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

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

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

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

Хочу купить!

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

Цена: 1200 p.


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

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

Отчёт отправил: 5029. Андрей Поляков Выполнено за 45 мин. [Показать отчёт]
Научился: Работать с графикой в проекте Windows Forms, использовать Bitmap, Graphics. 
Сложности: не было 
Комментарии: нет 
2 Движение шарика 00:31:11 108 чел. ★ 4.9 Done
  Второй урок.
Добавление таймера, создание функции для изменения координат, реализация отскока шарика от краёв картинки, учёт размера кружка, стирание старого положения.

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

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

Отчёт отправил: 5029. Андрей Поляков Выполнено за 2 час. 30 мин. [Показать отчёт]
Научился: Научился делать видеообзоры своих программ 
Сложности: не было. 
Комментарии: нет 
Видеообзор: https://youtu.be/8yDTJvnvBqk
7 Форма настроек 00:23:24 38 чел. ★ 5 Done
  Шестой урок
На этом уроке мы создадим форму для выбора настроек нашего Хранителя экрана.
Можно будет выбрать цвет фона и цвет линий, а также количество вершин.
форма будет создана в новом классе Window Forms.
Отчёт отправил: 5029. Андрей Поляков Выполнено за 45 мин. [Показать отчёт]
Научился: Научился работать с новым видом диалогов (ColorDialog), познакомился с TrackBar, узнал, как добавлять новую форму в проект Windows Forms. 
Сложности: не было 
Комментарии: нет 
8 Применение настроек 00:29:52 38 чел. ★ 5 Done
  Седьмой урок
На этом уроке мы добавим кнопку Сохранения настроек
и сделаем применение выбранных параметров.
Для этого нам нужно будет организовать
передачу данных между формами.
Для применения всех настроек придётся дорабатывать
классы Graph и Figure, писать алгоритм
для добавления/удаления вершин
и создания случайной фигуры.
Придётся дорабатывать
Отчёт отправил: 5029. Андрей Поляков Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Научился реализовывать взаимодействие, передачу параметров между формами. 
Сложности: у меня сразу несколько фигур, пока не решил, как лучше организовать смену цвета и вершин для каждой из них. 
Комментарии: нет 
9 Использование реестра 00:29:45 38 чел. ★ 5 Done
  Восьмой урок
На этом уроке мы будем сохранять параметры в реестре и считывать их оттуда.
Функции для работы с реестром вынесем в отдельный статический класс.
Сделаем считывание и сохранение всех трёх параметров:
цвет фона, цвет линий, количество вершин.
Отчёт отправил: 5029. Андрей Поляков Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Научился работать с реестром windows, статическими классами и перегрузкой методов. 
Сложности: не было 
Комментарии: нет 
10 Параметры командной строки 00:22:41 36 чел. ★ 5 Done
  Девятый урок
На этом уроке мы узнаем,
как нужно управлять запуском стандартных хранителей экрана.
Какие параметры командной строки для этого используются.
Добавим анализ аргументов командной строки
в свою программу, в зависимости от которых
будем открывать либо настройки программы,
либо запускать хранитель экрана.
Отчёт отправил: 5029. Андрей Поляков Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Работать с аргументами функции void Main(string[] args) (параметрами командной строки), запускать приложение в режиме debug с различными аргументами. 
Сложности: не было 
Комментарии: нет 
11 Полноэкранный режим 00:13:58 36 чел. ★ 5 Done
  Десятый урок
На этом уроке мы переделаем нашу заставку чтобы она работала в полноэкранном режиме.
Для этого уберём заголовок, установим аттрибут "поверх всех окон".
Создадим ещё один конструктор, которому будем передавать размеры основного экрана.
Отчёт отправил: 5029. Андрей Поляков Выполнено за 30 мин. [Показать отчёт]
Научился: Научился изменять и настраивать "вручную" из кода размеры формы и отображать ее в полноэкранном режиме. 
Сложности: не было 
Комментарии: нет 
12 Режим предобзора и установка 00:25:51 36 чел. ★ 5 Done
  Одиннадцатый урок, последний
На этом уроке мы закончим создание хранителя экрана.
Сделаем самую сложную часть - вывод предобзора в окно вызвавшей программы.

Отчёт отправил: 5029. Андрей Поляков Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: Узнал про DllImport, как работать с функциями WinAPI из проекта C#. Научился добавлять режим предпросмотра в хранитель экрана. 
Сложности: не было, так как довольно хорошо знаю WinAPI 
Комментарии: нет 
13 ФИНАЛЬНЫЙ урок 00:23:23 32 чел. ★ 4.9 Done
  Задание
Высказать свой отзыв об этом курсе
записав видеообзор полученной программы.

Отчёт отправил: 5029. Андрей Поляков Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: Научился делать обзоры программ. 
Сложности: не было 
Комментарии: ещё для андроида такой хранитель экрана сделаю :) 
Видеообзор: https://youtu.be/SzTMduSj2RM
14 VIP. Говорящие часы. Запись голоса 00:57:32 30 чел. ★ 5 Done
  На уроке создаём программу для записи звуковых файлов,
которые будут использованы для создания говорящих часов.
Отчёт отправил: 5029. Андрей Поляков Выполнено за 3 час. 00 мин. [Показать отчёт]
Научился: Научился записывать звук из программы C# 
Сложности: не было 
Комментарии: нет 
15 VIP. Говорящие часы. Воспроизведение 00:38:41 28 чел. ★ 5 Done
  На уроке пишем программу,
которая показывает и говорит текущее время
Отчёт отправил: 5029. Андрей Поляков Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Повторил, как запускать потоки, автоматически воспроизводить время. 
Сложности: не было 
Комментарии: нет 
  Итого:   15 видеоуроков общей продолжительностью 7 час. 19 мин. 14 чел. ★ 4.96  
  Финалисты:   Олюшка,   Денис,   Дмитрий,   Андрей Поляков,   Артём,   Permitin Alexey,   Валерий Жданов,   Алексей В.,   Станислав,   Tekashnik,   Иван Воронин,   Neverwinter 2,   Новопашин Владимир,   Александр .

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Научился делать обзоры программ.
ещё для андроида такой хранитель экрана сделаю :)
Научился: 1) лучше прочувствовала связь между формой, панелью инструментов, окном свойств и кодом программы, а также научилась работать с событиями. 2) на основании предыдущего научилась вызывать фигуры на экран по клику мыши и запускать их движение по экрану. 3) Создавать движок для изменения численных значений. В процессе работы программы изменять цвета фона и линий и изменять движком количество вершин многоугольника, а также соединять вершины случайным образом 4) Создавать вторую форму, работать с командной строкой и регистром, устанавливать иконку в exe-file, переименовывать проект, решение и exe-file 5) Познакомилась с оконнымиWinApi функциями и их применением. 6) Запускать программу в полноэкранном режиме и режиме предпросмотра. 7) Устанавливать проект в экранную заставку панели управления, запускать его из заставки в 3 режимах - режиме предпросмотра, настройки параметров и полноэкранном режиме. 7) Создавать видео, записывать его в youtube, редактировать в youtube, помещать папки на Google Drive.
Трудности: Найти время и место для создания видео, проговорить , синхронизировать звук и видео. Избавиться от оговорок, мяуканья кота, звонка в дверь и телефона пр. Проблемы редактирования в oCam (при соединении фрагментов, и их удалении с помощью переписи в oCam резко падает яркость видео). А также при переписи неожиданно появляется скрип в микрофонах. Частично удалось улучшить запись с помощью редактора в youtube. Но сделать ее качественной не удалось, также как избавиться от случайно возникшей при записи синтаксической ошибки.
Первую часть отчета создала еще в первые дни Нового года, а потом никак не могла соединить все, чтобы получилось качественно. Бросила это дело, а недавно, увидев, что в youtube есть редактор, кое-как слепила и улучшила.