Обучение c# видеоуроки

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

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

Микроигры

В этом видео-курсе мы будем создавать более сложные и более интересные игровые программы, которые потребуют от программиста не только знание визуальных компонентов, но и навыки составления алгоритмов для реализации логики игры и/или искусственного интеллекта.

По мере обучения мы создадим знакомые тебе с детства игры:
пятнашки и арканоид, виселица и крестики-нолики,
змейка и шарики 5 в ряд, и даже популярную сейчас игру 2048.
Для каждой из этих игр мы создадим “искусственный интеллект”, поэтому играть с программой будет не так-то просто... :)

В разных играх ты познакомишься с разными алгоритмами:
работа с графикой, переборы вариантов, алгоритм поиска в глубь и в ширину,
работа с массивами и матрицами, динамическое создание визуальных компонентов,
работа с координатами, элементы теории графов и, конечно же,
применение концепций Объектно-Ориентированного Программирования, сейчас без него никуда!

А в конце курса тебя ждёт VIP-урок по созданию микро-шутера "Стрелялка".



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

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

После взноса  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 Игра 15 - Кнопки 00:13:41
2 теста
184 чел. ★ 5 Done
  Создание известной игры «Пятнашки» — отличное упражнение для начинающих программистов.
На первом уроке мы создадим интерфейс игры и разместим все кнопки.
На втором уроке мы напишем класс логики игры и допишем программу.
На третьем уроке мы вместо кнопок будем использовать картинки —
динамически их создавать и размещать на них вырезанные кусочки основной картинки.
Отчёт отправил: 10558. Иван Воронин Выполнено за 30 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: 1 - Создал иконку в фотошопе. 2 - Числа в двоичной системе. 3 - подготовил графику для финальной версии =) пока не афиширую. 
2 Игра 15 - Алгоритм 00:42:15
1 тест
148 чел. ★ 5 Done
  Завершаем создание игры Пятнашки.
На втором уроке мы напишем класс логики игры, в котором опишем матрицу для хранения чисел на кнопках и реализуем основные методы: start, shift, check_numbers и другие.

Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 25 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Отличный урок, отличная игра, идём дальше. з.ы. усложнил тем, что числа в бинарном виде =) 
3 Игра 15 - Картинка 00:36:03
2 теста
106 чел. ★ 5 Done
  Переделываем игру Пятнашки в Пазл картинки.
Убираем кнопки, вместо них динамически размещаем матрицу PictureBox'ов,
в которые загружаем кусочки картинки, предварительно разрезав их
и сохранив все части картинки в матрицу Image.
Размер поля можно будет выбирать, от 3 на 3 до 6 на 6.
Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 1 мин. [Показать отчёт]
Научился: Отличный урок, добавил несколько картинок, на каждом уровне новая, так же вынес подгрузку картинки за пределы циклов, чтобы каждый раз одну и туже картинку не подгружало для обрезания, теперь она просто передаётся доп. параметров. Отличное завершение для классической игрушки. 
Сложности: найти время 
4 Аполлон. Главные герои 00:00:00
2 теста
57 чел. ★ 4.8 Done
  На этом уроке мы озвучим правила игры Аполлон.
Выясним, какие у нас будут главные герои.
Твоё самостоятельное задание -
нарисовать на бумаге внешний вид игры
со всеми главными героями.
Как ты это себе представляешь.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 мин. [Показать отчёт]
Научился: Дочка изъявила желание нарисовать это дело, приложил скан её набросков за пару минут. 
Сложности: найти время 
5 Аполлон. Законы физики 00:00:00
56 чел. ★ 5 Done
  Корабль Аполлон прилуняется на Луну.
На этом уроке мы рассмотрим упрощённую
физическую модель этого процесса и
выпишем все параметры и все формулы,
которые будут управлять этим процессом.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 мин. [Показать отчёт]
Научился: Основное время ушло на создание текстур в стиле спектрума =) Отличный урок, идём дальше. з.ы. так как данный урок тоже уже третий раз попадается, то его отчёт не составил особого труда =) 
Сложности: найти время 
6 Аполлон. Плавное прилунение 00:00:00
1 тест
53 чел. ★ 5 Done
  На этом уроке мы допишем игру Аполлон.
Свяжем класс логики с интерфейсом.
Сделаем управление двигателем с помощью мышки.
Добавим таймер, функцию отображения корабля.
А также сообщение о конце игры и перезапуск игры.
Отчёт отправил: 10558. Иван Воронин Выполнено за 2 мин. [Показать отчёт]
Научился: Надо было просто повторить за учителем, а я как всегда красоту навожу, основное время на фотошоп и ушло =) 
Сложности: Остановиться дорабатывать 
Видеообзор: -xNY0uNaIDU
7 ПОЛУФИНАЛЬНЫЙ УРОК 00:23:23
73 чел. ★ 4.9 Done
  Задание.
Записать видеообзор любой программы из первой части этого курса.

Отчёт отправил: 10558. Иван Воронин Выполнено за 8 мин. [Показать отчёт]
Научился: Так как курс уже не раз перетасовывался, добавлялись и удалялись уроки, то мой отчёт тоже может стать не актуальным из-за того, что игрушки до фолуфинала могут измениться вновь =) а так как видео отчёт уже записывал по одной игрушке, то записывать видео отчёт не стал, оставлю это дело для финального урока =) 
Сложности: найти время 
8 2048 - Учимся играть 00:08:33
102 чел. ★ 4.8 Done
  Начинаем создание модной игры 2048.
Но сначала нужно научиться в неё играть.
Это можно сделать здесь: http://2048game.com/ru/
Отчёт отправил: 10558. Иван Воронин Выполнено за 49 мин. [Показать отчёт]
Научился: Прикольная игра, ранее в неё не играл никогда, поиграл 3 раза, с каждым разом всё дальше и дальше. 
Сложности: найти время 
9 2048 - Интерфейс 00:39:12
92 чел. ★ 5 Done
  На этом уроке мы создадим интерфейс программы.
Динамически создадим Label для цифр и разместим их в матрицу.
Раскрасим кнопочки и создадим обработчик курсорных клавиш.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 59 мин. [Показать отчёт]
Научился: отличное начало, всё супер, идём дальше. 
Сложности: найти время 
10 2048 - Смещение 00:24:30
2 теста
86 чел. ★ 4.9 Done
  На этом уроке мы реализуем класс с логикой игры.
Далее, напишем заглушки для функций смещения клеток
и функцию проверки окончания игры game_over().
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 34 мин. [Показать отчёт]
Научился: Отлично, идём дальше. з.ы. надо будет добавить проверку на возможность объединения соседних одинаковых чисел, даже если всё поле заполнено, но думаю это будет в след. уроках. 
Сложности: найти время 
11 2048 - Объединение 00:43:33
36 чел. ★ 5 Done
  На этом уроке мы напишем функции смещения и объединения клеток.
Далее, пошагово выполним эти алгоритмы, чтобы понять принцип их работы.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 48 мин. [Показать отчёт]
Научился: Отличная игра получилась, заменил TableLayoutPanel на обычную Panel, так намного веселее, а по поводу поддержки ресайза, ну чуток больше кода добавить надо будет, не критично. Реализовал свою функцию поиска возможных комбинирований при проверке на конец игры. Так же порефакторил код, чтобы не было дубликатов. Всё супер, идём дальше. 
Сложности: найти время 
12 FREE Крестики-Нолики. Игра на двоих 00:40:36
124 чел. ★ 4.9 Done
  Играл в крестики-нолики, мелом на асфальте?
Я играл, и очень много, был непревзойдённым профессионалом
в своём дворе, изучил все ходы-выходы в этой программе,
и замахнулся на создание искусственного интеллекта! :)
Игрушка не сложная, она отлично подходит для
упражнения в программировании для программиста.
Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 58 мин. [Показать отчёт]
Научился: Отличная игрушка, видно, что урок древний, но от этого он не менее приятный. з.ы. Добавил иконку и текстуры крестика/нолика. Добавил счёт, который отображается в тайтле формы. Чей ход выполнен в виде булевой переменной, так удобнее и меньше ресурсов выделяется. Вместо булевой переменной play, реализовал перечисление State, с возможными вариантами стадии игры. Если стадия ИГРА, то после каждого клика по пустой клетке производится переход хода. При чьей-то победе, увеличивается счётчик на единицу победившей стороне. При ничье, счёт остаётся неизменным. Проверку наличия координат на поле вынес в отдельную функцию: OnMap(). Функцию Finish() реализовал по своему, производится проверка три вряд по всем направлениям (аля солнышко). Добавил подробное описание правил игры. Добавил подробное описание об игре. На формах "Об игре" и "Правила игры" добавлены иконки с левой стороны. На форме "Об игре" добавлен вопрос открытия профиля на сайте проекта и две кнопки: "Да" или "Нет". и много других мелких правок и оптимизаций... 
Сложности: остановиться =) 
13 Крестики-Нолики. Игра с компьютером 00:49:33
55 чел. ★ 4.9 Done
  На этом уроке мы добавим в игру Крестики-Нолики искуственный интеллект.
Мы напишем алгоритм, который будет искать наилучший ход для позиции.
Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 31 мин. [Показать отчёт]
Научился: Отличный урок, но реализацию ИИ сделал по своему =) Всё реализовывал сам, потом смотрел видео. з.ы. Убрал TableLauoutPanel, реализовав имитацию игры цветными ручками на бумаге в клеточку =) Выбор за кого играет ИИ вынес в доп. меню игры с ИИ. Реализовал демонстрацию, где ИИ играет сам с собой с задержкой пол секунды (не использовал таймер или внешний поток, всё отрабатывает в общем потоке, отображая ситуацию на поле). 
Сложности: победить ИИ =) 
14 ФИНАЛЬНЫЙ УРОК 00:23:23
57 чел. ★ 4.9 Done
  Задание:
Записать видео обзор любой игры, созданной на этом курсе.

Отчёт отправил: 10558. Иван Воронин Выполнено за 27 мин. [Показать отчёт]
Научился: Сложно делать уроки с температурой =) 
Сложности: найти время 
Видеообзор: WQcF08iPOI0
15 VIP урок. Формула 1 00:41:47
104 чел. ★ 4.9 Done
  Создаём динамический графический объект - машинку.
Ездит по экрану. Поворачивает. Восемь направлений.
Разгоняется и тормозит. Задний ход.

Отчёт отправил: 10558. Иван Воронин Выполнено за 8 час. 11 мин. [Показать отчёт]
Научился: Создал иконку для приложения. Нарисовал спрайты для 4 машинок разного цвета. Вместо пустого фона использовал красивую трассу =) Управление машинками синхронизировал, чтобы они двигались как на параде =) Каждая машинка это экземпляр класса Car. Все картинки подгружаются перед запуском игры и для каждой машинки загружаются текстуры своего цвета. Движение машинок осуществляется при зажатии кнопки "Вверх", при отпускании её, они останавливаются. Добавлена поддержка коробки передач, для этого используются кнопки: "A" и "Z". В момент зажатия клавиши "Вверх" и последующих нажатиях на клавиши поворота: "Влево/Вправо", машинки не останавливаются, так же и с переключением скоростей (3 передних и 1 задняя). з.ы. есть ещё куча идей, но это отдельная история, не для данного отчёта =) 
Сложности: остановиться 
Видеообзор: E7kfIPAFR3g
16 VIP урок. Стрелялка 01:33:59
66 чел. ★ 4.9 Done
  Сегодня мы напишем классический одноэкранный шутер.
Будет лететь самолётик и сбивать шарики.
На примере простых объектов демонстрация основ ООП.
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 час. 28 мин. [Показать отчёт]
Научился: Отличный урок, навеял игрушку Space Invaders/Galaxian, поэтому не удержался и решил реализовать в этом ключе =) Подробности в видео, приятного просмотра =) 
Сложности: остановиться =) 
Видеообзор: U_Y0jXXCWRs
17 VIP урок. Змейка 01:08:56
14 чел. ★ 4.9 Done
  Создаём популярную игру «Змейка».
На примере простых объектов демонстрация основ ООП.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 день 20 мин. [Показать отчёт]
Научился: найти время 
Сложности: как обычно создал уникальную иконку для бинарника и форм помимо базовых, добавил текстуры поворота головы/хвоста размещение змейки на поле случайное змейка поворачивает голову туда куда ползёт, хвост поворачивается за телом в левом-верхнем углу экрана показаны яйца текущей змеиной семьи первый кто вылупился, начинает отъедаться на кроликах, чтобы вырасти и отложить яйца при поедании определённого количества кроликов, появляются дополнительный яйца если змейка врезалась в стену или слопала саму себя, рождается следующая змейка и так до тех пор, пока не окончатся яйца, по окончанию игры будет отображена статистика в правом-верхнем углу показано количество слопанных кроликов текущего змеиного выводка вверху-по центру показан рекорд на протяжении всех попыток игры рекорд сохраняется в файл в папке data при запуске игры, если таковой файл имеется, то загружается рекорд из файла, если же файла нет, то рекорд обнуляется (можно сбросить простым удалением файла) поворачивать голову при движении за 1 такт может только под 90 градусов (защита от того, чтобы не повернуть на 180 и не слопать саму себя) игровая статистика выполнена в игровом стиле, добавлены необходимые текстуры если змея врезалась, но при этом ещё есть яйца, то игра не начинается сначала, появляется новая змейка, а текущий счёт не обнуляется, пока не закончится игра после при этом генерируется новое с новым расположением змейки и кролика добавлена новая форма и активирована как основная, форма самой игры теперь вторична на начальной форме добавлено игровое меню из 3 пунктов: Играть, О игре, Выход пункты меню подсвечиваются в стиле ZX Spectrum при наведении мышью пунктами меню можно управлять и стрелками вверх/вниз на клавиатуре выбор пункта осуществляется клавишей Enter или кликом мыши при выборе пункта "Играть" - открывается форма и начинается игра при выборе пункта "О игре" - открывается профиль на проекте videosharp.info звуковые файлы хранятся в папке data, так же они были конвертированы в форма mp3 для экономии места з.ы. урок делал ещё летом 2016 года по событию "Чашка кофе". 
Видеообзор: mhCMxpdP3oA
  Итого:   17 видеоуроков 9 час. 09 мин.
10 тестов
12 чел. ★ 4.93  
  Финалисты:   Tekashnik,   Максим Лапшинов,   Иван Воронин,   Permitin Alexey,   Кирилл,   Артём Нагорный,   no name,   Дмитрий,   MaxB,   Tom,   Tim,   Alina .

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





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

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

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

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


Научился: Записал очередной видеообзор.
Трудности: Трудно записывать когда ты приболел и у тебя плохой микрофон, но волна позитива и радости от завершения курса даёт непомерные силы.
Спасибо за курс Евгений Витольдович! Отличнейшая тренировка навыков и учеба, учеба, учеба для меня! Каждый новый видеоурок даёт всё больше мотивации для работы над собой и это замечательно.


Научился: Видео отснять пока нет возможности. Так что только небольшая нарезка картинок. Курс очень понравился. Особенно игра 2048. Думал всё гораздо сложнее, а оказалось раз два и готово. Следующий курс - куда улитка укажет:)
+++