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

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

Игра СОКОБАН

Приглашаю пройти видеокурс по созданию полноценной игровой программы СОКОБАН.
Мы вместе, за руку, пройдём по всем этапам создания законченной интеллектуальной игры.
1. Создание редактора уровней.
2. Придумывание этих самых уровней.
3. Создание собственно игры.
4. Решение олимпиадной задачки для добавления ИИ.
5. Переделка игры в режим "на двоих".
6. Написание класса Phone для связи двух программ по сети.
7. Создание сетевой версии игры Sokoban.
8. Оформление итоговой программы.

Открытие 27 ноября в 18:00

Название: Игра Сокобан
Объём: 21 видеоурок.
Доступ: 30 дней

5,000 руб


Для подписки на пакет необходимо авторизоваться.

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

# Название видеоурока Решило Рейтинг Доступ
1 Сокобан - Вступление 00:11:09 114 чел. ★ 4.8 Done
  Отчёт отправил: 9567. Максим Решено за 2 час. 00 мин. [Показать отчёт]
Научился: Играть в Сокобан 
Сложности: Пройти уровни 
Комментарии: Прошел 5, было сложно.. Но что бы там ни было, правила я точно понял =) 
2 Сокобан - Подготовка - Картинки и лабиринт 00:04:56 76 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 30 мин. [Показать отчёт]
Научился: Искать картинки 
Сложности: Найти картинки 
Комментарии: Ещё не определился с местом, куда ставить ящики и поставленным ящиком 
3 Сокобан - Редактор - Загрузка 00:33:25 76 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 25 мин. [Показать отчёт]
Научился: Создавать уровни 
Сложности: Ничего 
Комментарии: Всё хорошо 
4 Сокобан - Редактор - Интерфейс 00:40:37 63 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Ничему 
Сложности: VS отказывалась отображать мои картинки (добавляла в ресурсы, но не отображала) 
Комментарии: Я сделал пару небольших улучшений. Всё на видео =) 
Видеообзор: https://youtu.be/JI1ou5ErZC8
5 Сокобан - Редактор - Редактирование 00:38:33 56 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Ничему 
Сложности: Обработать на одном контроле MouseEnter во время, когда она нажата (MouseDown) на другом 
Комментарии: • enum можно спокойно преобразовать в int, так что кнопкам можно было кнопкам присвоить int-овый Tag и сделать один обработчик на всех • Сделал добавление строк/столбцов по лику на крайние ячейки 
6 Сокобан - Редактор - Сохранение 00:44:47 52 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 30 мин. [Показать отчёт]
Научился: Сохранять уровни 
Сложности: Ничего 
Комментарии: Я к прошлому уроку сделал несколько значительных улучшений по добавлению/удалению строк и столбцов и размещению элементов, но к моменту отправки отчёта ещё не было готово интерактивное удаление. Сейчас всё доделал, всё на видео =) Кстати, обратите внимание, что с MouseMove не всё так просто (я где-то полчаса провозился) =) 
Видеообзор: https://youtu.be/wCno7H5ZHTU
7 Сокобан - Редактор - Улучшение 00:29:00 51 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 5 мин. [Показать отчёт]
Научился: Ничему 
Сложности: Ничего 
Комментарии: У меня уже всё было даже удобнее реализовано. То чувство, когда не зря старался =) ПС: Прикрепил то же видео, на всякий случай 
Видеообзор: https://youtu.be/wCno7H5ZHTU
8 Сокобан - Создаём свои уровни 00:08:05 49 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 15 мин. [Показать отчёт]
Научился: Создавать уровни 
Сложности: Создать уровни =) 
Комментарии: Уровни: • Осторожно, стены! • Тише едешь - дальше будешь 
9 Сокобан - Игра - Интерфейс 00:43:45 52 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 40 мин. [Показать отчёт]
Научился: Ничему 
Сложности: Ничего 
Комментарии: А чем Point не подходил? Зачем Place? 
10 Сокобан - Игра - Управление 01:06:38 45 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 1 час. 10 мин. [Показать отчёт]
Научился: KeyPreview - это же то, чего мне не хватало все эти годы!!! Вы бы знали, как я до этого выкручивался =) 
Сложности: Ничего 
Комментарии: • Ух, почему я раньше не знал об этом свойстве?? Огромное спасибо!!! Кхм-кхм. Всё, я успокоился =) • Сделал, чтобы map отображалась как BackgroundImage, а top как просто Image (на скриншоте видно) • Воу, я сделал как предлагал Orange (last_level = level_num + 1;) ещё с самого начала (до того, как он это предложил) 
11 Сокобан - Решалка - Тестер 00:59:55 40 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 50 мин. [Показать отчёт]
Научился: Проверять решение лабиринта 
Сложности: Ничего 
Комментарии: Не нужно было выносить координаты "яблока" в отдельные переменные, всё намного проще =) Можно было просто проверить, после последнего хода находится ли оно на месте финиша (см. скриншот 2) 
12 Сокобан - Решалка - Мышка 00:53:02 38 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 50 мин. [Показать отчёт]
Научился: Двигать ящик из точки А в точку Б 
Сложности: Ничего 
Комментарии: Жду 4-мерного массива =) 
13 Сокобан - Решалка - Яблоко 00:44:23 37 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 50 мин. [Показать отчёт]
Научился: Находить кратчайший путь, чтобы передвинуть ящик из пункта А, в пункт Б 
Сложности: Ничего 
Комментарии: • Сколько уроков подряд наблюдаю за структурой Place и так и не понял, почему не использовать Point, который даже лучше?? • Зачем отдельная структура для направлений? У нас же уже есть прошлая версия Brain, которая идеально подходит? Просто переименовать её в ChainUser, например, сделать глобальной и всё =) 
14 Сокобан - Решалка - Оптимизация 00:11:37 37 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 20 мин. [Показать отчёт]
Научился: Прямой доступ намноооого быстрее, чем поиск 
Сложности: Ничего 
Комментарии: 20 секунд против 13 милисекунд!! Вау, это какая-то невозможная оптимизация =) 
15 Сокобан - Игра - Автоходы 00:42:22 36 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 30 мин. [Показать отчёт]
Научился: Внедрил автоходы 
Сложности: Ничего 
Комментарии: Как вы, наверное, догадались, я кое-что улучшил =) Ящик вибирается по одному клику и выдиляется синим (видно на скриншоте). Синий ящик - значение Cell. Функция Cell_MouseClick на втором скриншоте =) 
16 Сокобан - Редактор - На двоих 00:31:57 33 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 30 мин. [Показать отчёт]
Научился: Создавать уровни на двоих 
Сложности: Ничего 
Комментарии: Я оставил всё в том же редакторе, посмотрим, чем это обернется =) 
17 Сокобан - Игра - На двоих 00:15:40 33 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 20 мин. [Показать отчёт]
Научился: Проходить свой уровень =) 
Сложности: Ничего 
Комментарии: Я и не думал, что мой уровень окажется сколько-нибудь сложным, а нет, я его раз 5 перезапускал =) 
18 Сокобан - Телефон - TCP/IP протокол 00:47:44 44 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Передавать и получать данные между двумя компьютерами 
Сложности: Ничего 
Комментарии: Для разнообразия получение сделал через событие, а не делегат (хотя он там тоже используется, но всё же). Вопрос: А сделать, чтобы клиентов могло быть больше одного? 
19 Сокобан - Игра - На двоих по сети 00:56:59 32 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 1 час. 10 мин. [Показать отчёт]
Научился: Играть в одну игру на 2-х компьютерах 
Сложности: Ничего 
Комментарии: Сделал метод SendStep, который сам отправляет и выполняет нужное действие для заданного игрока (чтобы постоянно не писать отправку и проверку, что отправилось) 
20 Сокобан - Завершение 00:37:44 31 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 30 мин. [Показать отчёт]
Научился: Ничему 
Сложности: Ничего 
Комментарии: Ура, последний урок!! Игры со спрайтами + Скобан меньше чем за месяц - неплохой получился марафон =) 
21 ФИНАЛЬНЫЙ урок. Видео-обзор проекта Сокобан 00:23:23 21 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 30 мин. [Показать отчёт]
Научился: Закрепил классы и из наследование, деллигаты, enum и передочу данных по TCP/IP протоколу 
Сложности: Вносить свои улучшения, но это было интересно =) 
Комментарии: Курс отличный! Если вы давно зотели написать большой проект, но боялись начать, то этот курс как раз для вас =) Но я уже немного подустал, так что обзор получился далеко не лучший.. Следующий курс. По всей видимости "Мат Конём и Слоном" надо добивать, а потом наконец-то смогу отдохнуть =) 
Видеообзор: https://youtu.be/gaJZpbh1CKw
22 VIP. Бот для игры БАЛДА 01:22:57 4 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 1 час. 10 мин. [Показать отчёт]
Научился: 1) Перебирать все варианты на заданном поле 2) Оптимизировать сей процесс 
Сложности: Ничего, спасибо, все понятно =) 
Комментарии: Вывод сделал через TreeView, чтобы можно было легко разделять слова разной длины; добавил поле для ввода стартового слова, чтобы самому его не вбивать; при выборе слова на поле показывается, куда ставить букву (если выбрать что-то другое - буква и выделение пропадают), если же на вариант нажать 2 раза, то он автоматически внесется в список использованных слов (и более отображаться не будет, если его возможно будет составить), а поле с вариантами - обновится; Как-то так =) 
  Итого:   22 видеоурока общей продолжительностью 13 час. 48 мин. 4 чел. ★ 4.97  
  Финалисты:   zhikharevav,   Ильшат,   Максим,   Новопашин Владимир .

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Повторил создание видео обзоров.
Трудности: Кратко рассказать про пройденный курс)
Данный курс я начал проходить во время новогоднего марафона программиста, где была хорошая поддержка Евгения Витольдовича и марафонцев. В целом, очень достойный курс, хорошие дополнения, такие как автоходы, игра на двоих, по сети. Спасибо, Евгений Витольдович!)
Смотреть видеозапись: https://youtu.be/J7pDmAqdUFU
Научился: подготавливать, прокачивась делать обзор своих результатов
Трудности: все сказать быстро и по существу, и все равно затянутый обзор получился покамест еще
Хочу сказать только еще в очередной раз СПАСИБО ЕВГЕНИЙ!!! А так же всем Вам однокурсникам, делайте, только делайте и у вас уже ВСЕ получается! :)
Смотреть видеозапись: http://youtu.be/sCvK9MKFskc