C# обучение для чайников

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

основатель — Волосатов Евгений Витольдович

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

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

После взноса  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:11:09
4 теста
153 чел. ★ 4.8 Done
  Я приглашаю вас на видеокурс по созданию полноценной игровой программы СОКОБАН. Я проведу вас за руку по всем этапам создания законченной интеллектуальной игры:
1. Создание редактора уровней.
2. Придумывание этих самых уровней.
3. Создание собственно игры.
4. Решение олимпиадной задачки для добавления ИИ.
5. Переделка игры в режим "на двоих".
6. Написание класса Phone для связи двух программ по сети.
7. Создание сетевой версии игры Sokoban.
Будет интересно!

В конце видео - первое задание: Научиться играть! :)
Ссылка на игру Сокобан
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 20 мин. [Показать отчёт]
Научился: нечему 
Сложности: с 10 уровнем пришлось немножко повозится 
Комментарии: все хорошо 
2 FREE Сокобан - Подготовка - Картинки и лабиринт 00:04:56
1 тест
111 чел. ★ 4.9 Done
  На этом уроке мы подготовим 6 пиктограмм и две картинки для игры,
а также придумаем свой собственный уровень, который запишем в текстовый файл.

Отчёт отправил: 5649. Максим Лапшинов Выполнено за 20 мин. [Показать отчёт]
Научился: подготовил изображения 
Сложности: придумать какие картинки взять 
Комментарии: нуту 
3 Сокобан - Редактор - Загрузка 00:33:25
105 чел. ★ 5 Done
  Мы начинаем создавать редактор уровней
для известной логической игры Sokoban.

Редактор будет создан за четыре урока.
На первом уроке мы создадим класс для загрузки
уровня с текстового файла и протестируем его работу.

Отчёт отправил: 5649. Максим Лапшинов Выполнено за 2 час. 30 мин. [Показать отчёт]
Научился: повторил про enum,out. вывести уровни на форму 
Сложности: Да так нечего но занял интерфейс где то около 2 часов, такой минимальный чтобы только уровни загружались по клику на кнопку "Next Level" Ну только на это хватило мне терпения сделать :-) 
Комментарии: Я вот когда смотрю видео то немножко просмотрел, сделал по своему какой то функционал, потом посмотрел дальше видео как делают, если понравилось или кажется более правильным то взял и переделал. Может больше а может и меньше времени ушло у меня вывести все. Просто решил и сделал и на болячки наступал свои.  А там так сказало что интерфейс за 40 минут создают. :-) Просто попробовал я.  
4 Сокобан - Редактор - Интерфейс 00:40:37
90 чел. ★ 5 Done
  На этом уроке мы создадим интерфейс программы
и сделаем отображение загруженного уровня на экране.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 40 мин. [Показать отчёт]
Научился: узнал про toolstip 
Сложности: нечего 
Комментарии: странно кажется я раньше этот урок проходил то все также написано может и проходил только отчет не сделал не помню  
5 Сокобан - Редактор - Редактирование 00:38:33
83 чел. ★ 5 Done
  На третьем уроке мы сделаем наконец-таки редактирование поля.
Также реализуем возможность изменения размера лабиринта.
В конце напишем функцию для проверки корректности составленного уровня.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: как изменять картинки  
Сложности: нечего 
Комментарии: нету 
6 Сокобан - Редактор - Сохранение 00:44:47
79 чел. ★ 4.9 Done
  На четвёртом уроке мы закончим создание редактора уровней.
Напишем самую главную функцию для сохранения сделанных изменений в файл.
Затем добавим кнопки перехода к следующему и предыдущему уровню.
Останется только немного облагородить интерфейс программы.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: перезаписи файла 
Сложности: перезапись файла  
Комментарии: сделал чтобы больше несоздовали пустых следующих уровней при переходе и чтобы непускало с уровня если плохо создан  
7 Сокобан - Редактор - Улучшение 00:29:00
76 чел. ★ 5 Done
  Допиливаем и дорабатываем редактор до товарного вида.
Реализуем ещё несколько фишек.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: рефакторить и коментировать 
Сложности: рефакторить и коментировать 
Комментарии: Забыл вчера написать комментария к методам после коментирования всего проекта изменил функцию   private void CalcStat()         {             statAbox.Text = CountItems(Cell.abox) + "x";             statHere.Text = CountItems(Cell.here) + "x";         } то было сказанно в одном видео что "назаботимся о производительности" при написании этой функции, как то так А куда выкладывать архивы проектов чтобы видели только те кто участвует в марафоне?  
8 Сокобан - Редактор - Классика уровней 00:03:16
1 тест
26 чел. ★ 5 Done
  На этом уроке вам нужно выбрать любых два классических уровня
и создать их в нашей программе-редакторе.

Ссылка на классические уровни:
https://logic-games.spb.ru/sokoban/

Редактор можно скачать здесь:
https://www.videosharp.info/data/soft/SokobanEditor.zip
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 21 мин. [Показать отчёт]
Научился: поработал над уровнями  
Сложности: заставить себя 
9 Сокобан - Создаём свои уровни 00:08:05
1 тест
74 чел. ★ 4.9 Done
  Твоя задача - подготовить базу уровней для игры Сокобан.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 30 мин. [Показать отчёт]
Научился: что самому трудно создавать уровни 
Сложности: придумывать уровни 
Комментарии: нету 
10 Сокобан - Игра - Интерфейс 00:43:45
1 тест
75 чел. ★ 5 Done
  Мы начинаем создание интеллектуальной игры СОКОБАН.
У нас уже есть все необходимые классы и уровни для создания полноценной игры.
На этом уроке мы создадим форму и настроим интерфейс окна лабиринта.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: насчет делегатов вспомнил 
Сложности: нечего 
Комментарии: нету 
11 Сокобан - Игра - Управление 01:06:38
3 теста
66 чел. ★ 5 Done
  Теперь мы создадим класс логики игры Game,
используя который, мы реализуем управление человечком
курсорными клавишами клавиатуры.
А также сделаем переход на следующий уровень.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 2 час. 30 мин. [Показать отчёт]
Научился: про map и top что разбили на 2 массива узнал про это как их разбивать выводить массивы и их обрабатывать про метод Step что человечик начал бегать уже 
Сложности: понять про map и top как будут действия происходить 
Комментарии: интересно было но надо какието другие картинки подыскать  
12 Сокобан - Решалка - Тестер 00:59:55
1 тест
61 чел. ★ 5 Done
  На этом уроке мы напишем программу, которая будет
проверять правильность алгоритма поиска решения лабиринта.
http://www.videosharp.info/console/task/level=1178
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: запись и обработка массива а то все думал как там будит все это происходиьб 
Сложности: что то было но не знаю  
Комментарии: не сталкивался некогда с проблемой что мешает  static я бы сразу все в  
13 Сокобан - Решалка - Мышка 00:53:02
1 тест
60 чел. ★ 5 Done
  Мы начинаем решать задачу по решению игры Сокобан с одним ящиком.
Эта задача олимпиадного уровня на применение алгоритма поиска вширь.
Главный герой - мышка Альфа, которая желает затолкать яблочко к себе в норку.
Программу мы напишем за два урока.
На первом уроке мы создадим вспомогательную функцию MoveAlfa(),
которая подскажет мышке как попасть из одной клетки лабиринта в другую кратчайшим путём.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: как искать путь до обьекта 
Сложности: поиск в ширину 
Комментарии: как я понял тут поиск в массиве идет с использованием очереди а у вас есть про деревья что то? то в википедии поиск показывается в дереве хочется про деревья как то так несложно пройти или может можно ссылку чтобы все также на пальцах обьеснилибы  
14 Сокобан - Решалка - Яблоко 00:44:23
2 теста
58 чел. ★ 5 Done
  На втором уроке мы переделываем написанный алгоритм поиска маршрута мышки.
Теперь мы разрешаем мышке толкать яблоко, и записываем все изменения их расположений.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: алгоритму как находит путь с одним ящиком к финишу 
Сложности: понять как работает алгоритм  
Комментарии: интересно как можно создать алгоритм для всех ящиков перемещения  
15 Сокобан - Решалка - Оптимизация 00:11:37
1 тест
58 чел. ★ 5 Done
  На этом коротком уроке мы рассмотрим два способа оптимизации нашей программы, в результате которых работать она станет просто молниеносно!!!
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 3 час. 00 мин. [Показать отчёт]
Научился: что легкая оптимизация может существенно увеличить скорость работы алгоритма  
Сложности: понять все что вообще написано  
Комментарии: все занимательно хочется попробывать с больше ящиками сделать решалку  
16 Сокобан - Игра - Автоходы 00:42:22
1 тест
55 чел. ★ 5 Done
  Поздравляю, программа уже создана: можно играть, можно ею хвастаться.
На этом уроке мы добавим в игру автоходы, чтобы можно было
управлять нашим человечком с помощью мышки - указать, куда идти,
и даже указать, какой ящик куда нужно поставить.
Для этого нам потребуются два класса по решению лабиринта.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Применил классы которые создовали для консоли 
Сложности: нечего 
Комментарии: все очень интересно было можно задуматся о этой игре портировать на мобильники  
17 Сокобан - Редактор - На двоих 00:31:57
1 тест
52 чел. ★ 5 Done
  Переделываем редактор уровней, чтобы можно было создавать лабиринты для двоих игроков.
Создаём базу из 10 новых уровней игры в Сокобан для двоих.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 40 мин. [Показать отчёт]
Научился: что немножко изменить и другой редактор получится  
Сложности: создавать уровни 
Комментарии: нету 
18 Сокобан - Игра - На двоих 00:15:40
52 чел. ★ 5 Done
  Переделать игру, чтобы в неё можно было играть вдвоём на одной клавиатуре.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 30 мин. [Показать отчёт]
Научился: и игру получилось легко изменить на 2 человека 
Сложности: нечего 
Комментарии: нету 
19 Сокобан - Телефон - TCP/IP протокол 00:47:44
1 тест
63 чел. ★ 5 Done
  На этом видеоуроке мы создадим три класса, которые удобно
использовать для передачи данных между двумя компьютерами.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: соединять через протокол tcp\ip компьютер с сервером 
Сложности: насчет делегата  phone.Recv += Recv1; так и непонял 
Комментарии: зачем так phone.Recv += Recv1 делает кажется в других видеоуроках негде нету такого непонятно мне это 
20 Сокобан - Игра - На двоих по сети 00:56:59
1 тест
50 чел. ★ 5 Done
  На этом уроке мы наконец-таки сделаем сетевую версию программы Sokoban для двоих.
Мы будем использовать телефонный класс Phone с прошлого урока.

Отчёт отправил: 5649. Максим Лапшинов Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: приминять раннее написанную программу к другой программе 
Сложности: исправить ошибку одну маленькую  
Комментарии: там можно еще  поломать ее когда запусчен 2 программмы просто быстро нажимать на следующий уровень а потом на предыдущий и уже несовпадают уровни так и несмог исправит этой ошибки. закоментил sleep но всеровно есть ошибка а вы исправили? 
21 Сокобан - Завершение 00:37:44
47 чел. ★ 5 Done
  Игра уже написана, но всегда можно сделать чуть-чуть лучше.
На этом уроке мы объединим оба варианта игры в одну программу
и загрузим файл с уровнями в ресурсы программы.
Теперь в одном ехешнике будет сразу всё!
Это финиш!!!
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: улучшить игру 
Сложности: все объединить вместе 
Комментарии: все прекрассно и все уроки проидены за время марафона 9 дней Очень остался доволен осталось только видео обзор записать  
22 ФИНАЛЬНЫЙ урок. Видео-обзор проекта Сокобан 00:23:23
34 чел. ★ 5 Done
  Задание:
Записать видеообзор игры СОКОБАН.

Отчёт отправил: 5649. Максим Лапшинов Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: что надо доделать этот урок  
Сложности: говорить на видео 
Комментарии: не хотелось записывать видео обзор совсем  
Видеообзор: https://youtu.be/RVsmoc4lVLk
23 VIP. Бот для игры БАЛДА 01:22:57
15 чел. ★ 5 Done
  Используя текстовый файл из 27400 слов
создаём рекурсивный алгоритм подбора
слов для популярной игры Балда.
Отчёт отправил: 5649. Максим Лапшинов Выполнено за 22 час. 50 мин. [Показать отчёт]
Научился: Раньше ее создавал странно что этот урок мне незасчитан  
Сложности: сейчас нечего  
  Итого:   23 видеоурока 13 час. 51 мин.
20 тестов
11 чел. ★ 4.98  
  Финалисты:   LINKI,   Новопашин Владимир,   Tekashnik,   Алексей В.,   zhikharevav,   Evgenii Kudriavtcev,   chokayes,   Дмитрий,   Максим Лапшинов,   no name,   Max .

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





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

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

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

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


Научился: Создавать видеообзоры, и Самое главное доводить проекты до конца!
Трудности: Всего и не перечислишь. Все организовать для записи. записать видео с первого раза.
Я рад что выбрал этот проект и сделал его полностью! Это мой первый проект и я верю что будут еще! Хоть и вышла накладка с видео, но я решил так и оставить. УРА! Пишите код, каждый день, ни дня без кода, и вы всего достигнете! Не знаю как приложить архив.


Научился: подготавливать, прокачивась делать обзор своих результатов
Трудности: все сказать быстро и по существу, и все равно затянутый обзор получился покамест еще
Хочу сказать только еще в очередной раз СПАСИБО ЕВГЕНИЙ!!! А так же всем Вам однокурсникам, делайте, только делайте и у вас уже ВСЕ получается! :)