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

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Клуб формулистов - Ежемесячная подписка

Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.

После взноса  999  499 руб. вы получите подписку
в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.
Байты используются для открытия более одного урока в день, по 50 байт за урок.

Стоимость 1 дня за первый месяц: всего 16 рублей.

Первый взнос - 499 руб./30 дней.

Через 30 дней будет списано 3,000 2,400 руб.
за продление подписки в Клуб на 30 дней + подарок 512 байт.

Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.
Средства будет автоматически считываться с вашей карты.
Вы в любой момент сможете отказаться от продления Клуба.

Только ДО КОНЦА НЕДЕЛИ -
-50% скидка на первый взнос, всего 499 (вместо 999) рублей!
-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!
Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.


Стоимость 1 дня: 80 руб.

Хочу вступить!

Также есть другие варианты оплаты участия в КФ:

Билет в клуб формулистов на ...
30+ дней | 60 дней | 150 дней | 380 дней | 1000 дней

Внимание!
Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.
При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.







Первый взнос - 499 руб./30 дней + 500 байт.
Последующие взносы - 3,000 2400 руб./месяц + 512 байт.



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

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

Отчёт отправил: 9263. Андрей Н. Выполнено за 50 мин. [Показать отчёт]
Научился: В общем все просто и понятно, ничего пока нового. 
Сложности: --- 
Комментарии: Пункта рефакторинга кода в контекстном меню у меня нет, видимо это из-за более "свежей" версии VS2015. Как оказалось, вместо этого нужно использовать пункт QuickActions и он автоматически предлагает извлечь метод. 
2 Движение шарика 00:31:11
116 чел. ★ 4.9 Done
  Второй урок.
Добавление таймера, создание функции для изменения координат, реализация отскока шарика от краёв картинки, учёт размера кружка, стирание старого положения.

Отчёт отправил: 9263. Андрей Н. Выполнено за 50 мин. [Показать отчёт]
Научился: Подгонять ответ прибавлением и отниманием единицы. 
Сложности: --- 
Комментарии: --- 
3 Новый класс Graph 00:29:03
93 чел. ★ 4.9 Done
  Третий урок
Создание класса Graph и перенос в него всех действий с графикой.
Отчёт отправил: 9263. Андрей Н. Выполнено за 50 мин. [Показать отчёт]
Научился: Научился выносить сходный функционал в отдельный класс. 
Сложности: --- 
Комментарии: Автор выбрал не тот конструктор за основной. Если выбрать за основной конструктор наиболее полный из них, то избежать повторного запуска кода легко. На скриншоте можно увидеть мое решение, как видно код инициализации повторно не выполняется. Еще как вариант (еще проще) - использование параметров по умолчанию, но конкретно в моем исполнении этот  вариант не подошел, т.к. у меня по умолчанию в качестве фона используется "естественный" цвет формы Windows, а такой цвет не является константой и компилятор на него ругается. 
4 Новый класс Figure 00:31:21
83 чел. ★ 5 Done
  Четвёртый урок
На этом уроке мы вынесем всю логику работы с координатами в отдельный класс Pixel и в конце добавим ещё одни шарик в наш "Хранитель экрана".

Отчёт отправил: 9263. Андрей Н. Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Более детально изучил создание новых классов 
Сложности: --- 
Комментарии: По поводу статических переменных внутри класса - ключевое слово this к ним не относится, но вместо него можно использовать имя класса, так в методе InitMinMax(Pixel min, Pixel max) можно написать: Figure.min = min; Figure.max = max; и все прекрасно работает  
5 Новый класс Polygone 00:30:58
75 чел. ★ 4.9 Done
  Пятый урок
На этом уроке мы закончим создание хранителя экрана.
Мы создадим класс Polygone для хранения многоугольника.
Также добавим в класс Graph метод для его рисования.
В результате получится забавный анимированный многоугольник + потенциал для дальнейшего развития программы.
Отчёт отправил: 9263. Андрей Н. Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Более глубоко изучил работу с классами. Изучил работу со списками. Изучил передачу массива объектов в параметрах. 
Сложности: --- 
Комментарии: --- 
6 ПОЛУФИНАЛЬНЫЙ урок 00:23:23
51 чел. ★ 4.9 Done
  Задание:
Записать видео обзор созданного хранителя экрана.
Рассказать, понравился ли тебе курс, чему ты научился, что было самым сложным.

Отчёт отправил: 9263. Андрей Н. Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Научился записывать видеообзор приложения. 
Сложности: Набраться храбрости записать видео. 
Комментарии: --- 
Видеообзор: https://youtu.be/VWauk1G4QdA
7 Форма настроек 00:23:24
44 чел. ★ 5 Done
  Шестой урок
На этом уроке мы создадим форму для выбора настроек нашего Хранителя экрана.
Можно будет выбрать цвет фона и цвет линий, а также количество вершин.
форма будет создана в новом классе Window Forms.
Отчёт отправил: 9263. Андрей Н. Выполнено за 40 мин. [Показать отчёт]
Научился: Создавать и открывать модальное окно. 
Сложности: --- 
Комментарии: --- 
8 Применение настроек 00:29:52
44 чел. ★ 5 Done
  Седьмой урок
На этом уроке мы добавим кнопку Сохранения настроек
и сделаем применение выбранных параметров.
Для этого нам нужно будет организовать
передачу данных между формами.
Для применения всех настроек придётся дорабатывать
классы Graph и Figure, писать алгоритм
для добавления/удаления вершин
и создания случайной фигуры.
Придётся дорабатывать
Отчёт отправил: 9263. Андрей Н. Выполнено за 40 мин. [Показать отчёт]
Научился: Передавать параметры из формы в форму 
Сложности: --- 
Комментарии: У компонента Button (кнопка) есть свойство DialogResult, изменив которое в конструкторе можно уже не писать код на присваивание. У компонента TrackBar (движок с засечками) правильнее использовать событие ValueChanged все-таки, а не Scroll, т.к. оно должно охватывать изменение любым способом, например стрелками с клавиатуры, про Scroll я так не уверен... 
9 Использование реестра 00:29:45
44 чел. ★ 5 Done
  Восьмой урок
На этом уроке мы будем сохранять параметры в реестре и считывать их оттуда.
Функции для работы с реестром вынесем в отдельный статический класс.
Сделаем считывание и сохранение всех трёх параметров:
цвет фона, цвет линий, количество вершин.
Отчёт отправил: 9263. Андрей Н. Выполнено за 20 мин. [Показать отчёт]
Научился: Научился работе с реестром Windows 
Сложности: --- 
Комментарии: Непонятно зачем автор хранит значения в виде строк, ведь это куча лишних шишек и конвертаций, есть ведь ключи реестра типа DWORD 
10 Параметры командной строки 00:22:41
42 чел. ★ 5 Done
  Девятый урок
На этом уроке мы узнаем,
как нужно управлять запуском стандартных хранителей экрана.
Какие параметры командной строки для этого используются.
Добавим анализ аргументов командной строки
в свою программу, в зависимости от которых
будем открывать либо настройки программы,
либо запускать хранитель экрана.
Отчёт отправил: 9263. Андрей Н. Выполнено за 30 мин. [Показать отчёт]
Научился: Научился работе с параметрами командной строки 
Сложности: --- 
Комментарии: --- 
11 Полноэкранный режим 00:13:58
42 чел. ★ 5 Done
  Десятый урок
На этом уроке мы переделаем нашу заставку чтобы она работала в полноэкранном режиме.
Для этого уберём заголовок, установим аттрибут "поверх всех окон".
Создадим ещё один конструктор, которому будем передавать размеры основного экрана.
Отчёт отправил: 9263. Андрей Н. Выполнено за 20 мин. [Показать отчёт]
Научился: Научился выводить свою форму на весь экран и поверх всех окон. 
Сложности: --- 
Комментарии: Редактирование кода создания PictureBox было излишне, конечно, достаточно просто отредактировать параметры формы и PB сам растянется на всю нее. 
12 Режим предобзора и установка 00:25:51
42 чел. ★ 5 Done
  Одиннадцатый урок, последний
На этом уроке мы закончим создание хранителя экрана.
Сделаем самую сложную часть - вывод предобзора в окно вызвавшей программы.

Отчёт отправил: 9263. Андрей Н. Выполнено за 40 мин. [Показать отчёт]
Научился: Научился с помощью вызовов функций WinAPI32 выводить свой скринсейвер в окне предпросмотра! 
Сложности: --- 
Комментарии: --- 
13 ФИНАЛЬНЫЙ урок 00:23:23
36 чел. ★ 4.9 Done
  Задание
Высказать свой отзыв об этом курсе
записав видеообзор полученной программы.

Отчёт отправил: 9263. Андрей Н. Выполнено за 20 мин. [Показать отчёт]
Научился: Записывать видеообзор приложения. 
Сложности: Записывать видеообзор приложения. 
Комментарии: --- 
Видеообзор: https://youtu.be/i-D89kHLBjc
14 VIP. Говорящие часы. Запись голоса 00:57:32
33 чел. ★ 5 $
  На уроке создаём программу для записи звуковых файлов,
которые будут использованы для создания говорящих часов.
15 VIP. Говорящие часы. Воспроизведение 00:38:41
31 чел. ★ 5 $
  На уроке пишем программу,
которая показывает и говорит текущее время
  Итого:   15 видеоуроков 7 час. 19 мин.
17 чел. ★ 4.97  
  Финалисты:   Олюшка,   Денис,   Дмитрий,   Андрей Поляков,   Артём,   Permitin Alexey,   Валерий Жданов,   Алексей В.,   Станислав,   Tekashnik,   Иван Воронин,   Neverwinter 2,   Новопашин Владимир,   Александр,   Yefim,   superGrover,   MaxB .

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





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

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


Научился: Практика в формулировании текста для видеобзора.
Трудности: Найти подходящее время для записи видео, чтобы не мешали посторонние звуки, подбор текста. Однако, после полуфинального обзора в этом же видеокурсе, финальный обзор дался сравнительно легко.
Огромное спасибо Евгению Витольдовичу за такой замечательный видеокурс и за создание проекта videosharp.info!
Смотреть видеозапись: http://www.youtube.com/watch?v=9mxVsbjri3c&feature=youtu.be


Научился: Скорее повторила прошлый опыт)
Трудности: Настроиться на съемку:)
На данном этапе что-то пошло не так с моей программой, это видно в видеоотзыве, но, надеюсь, что у меня получиться справиться с этой проблемой!:)