Си шарп видео уроки

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

Шахматы on-line

Создание клиент-серверного приложения для on-line игры в шахматы с использованием технологий: Unity, C#, ASP.NET, MS-SQL, Entity Framework.

После оплаты вы получите последовательный доступ ко всем урокам курса "Шахматы по сети".
Также бонусом идёт доступ к курсам
+ "Наношахматы" - создание шахматной доски на HTML, CSS, JavaScript, PHP.
+ "Микрошахматы" - программирование всех шахматных правил на JavaScript.

И супер-бонус для дополнительной мотивации -
+ "Мат конём и слоном" - алгоритмический поиск всех решений одноимённой шахматной задачи для любой позиции.
Этот курс вы получите совершенно бесплатно, если пройдёте курс "Шахматы по сети" за 50 дней (время считается с момента отправки отчёта за первый урок).




Хочу купить!

Цена: 12,000 pуб.


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

# Название видеоурока Решило Рейтинг Доступ
1 План Шахматного проекта 00:06:08 53 чел. ★ 4.9 Free
  Мы начинаем создание клиент-серверной программы для игры в Шахматы по сети.
Это комплекс программных решений с исользованием: C#, ASP.NET, MS-SQL, EF, Unity
В результате мы создадим сервер, через который клиенты
смогут играть друг с другом в шахматы со смартфона.

Записаться на курс
2 Доска. Установка Unity 3D 00:05:17 52 чел. ★ 4.8 Free
  Цель этого урока - установить Unity и набрать несколько строчек шахматных терминов.

Скачать Unity3D: unity3d.com/ru

Набрать шахматные термины: videosharp.info/console/task/level=1766

Скачать архив с картинками: https://yadi.sk/d/irBRduLp3SseXY
3 Доска. Фигуры 00:13:05 28 чел. ★ 5 $
  На этом уроке мы разместим доску с фигурами.
4 Доска. Состояния переноса 00:11:29 30 чел. ★ 5 Free
  На этом уроке мы начнём процесс Drag-n-Drop и обсудим все состояния,
через которые проходит объект в процессе переноса.
Создадим скрипт, класс, перечисление, конструктор и метод Action.
5 Доска. Подцеп фигуры 00:12:05 28 чел. ★ 5 Free
  На этом уроке мы найдём фигуру, по которой кликнул пользователь.
6 Доска. Смещение 00:07:57 26 чел. ★ 5 Free
  На этом уроке мы допишем перенос фигуры и учтём смещение при клике.
Теперь вы сможете разыграть любую партию - сделайте скриншот интересной позиции!
7 Доска. Запуск на Windows 00:05:57 26 чел. ★ 5 Free
  На этом уроке мы создадим независимый билд (рабочая версия)
нашей игры для платформы Windows.
8 Доска. ПЕРВЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00 24 чел. ★ 4.9 $
  Мы закончили первую часть курса,
создали шахматную доску,
запустили её на Windows.

Напишите отзыв о первой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
9 Доска. VIP. Запуск на Android 00:10:00 23 чел. ★ 4.7 $
  На этом уроке мы запустим нашу доску на операционной системе Android.
Приготовьте свой планшет/телефон и приступайте к эскпорту и запуску!
* Выполнять этот урок не обязательно.
10 Доска. VIP. Запуск в Интернете 00:11:24 23 чел. ★ 4.9 $
  На этом уроке мы отправим наш проект в Интернет.
Для этого мы воспользуемся технологией WebGL.
Генерация страницы занимает продолжительное время.
Засеки момент начала и напиши в отчете сколько времени это заняло.

* Выполнять этот урок необязательно.
11 Классы. Архитектура проекта 00:19:24 33 чел. ★ 5 Free
  На этом уроке мы познакомимся с архитектурой проекта,
посмотрим на предстоящее путешествие с высоты птичьего полёта.
Задание: написать, что для вас в этом плане самое простое, а что - самое сложное.

Записаться на курс
12 Классы. Шахматная библиотека 00:15:22 24 чел. ★ 4.9 $
  На данном уроке мы начинаешь создание шахматных классов на языке C#,
которые позволят проверять правила игры.
Для этого мы напишешь библиотеку dll, получать в ход FEN и
желаемый ход, а на выходе ответ о том, разрешено это правилами игры или нет.
13 Классы. Цветная фигура 00:10:21 24 чел. ★ 4.9 $
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы рассмотри схему библиотеки dll,
которая поможет нам сориентироваться в дальнейших действиях.
14 Классы. Квадратная площадь 00:14:59 22 чел. ★ 5 $
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим структуру классов
с минимально необходимым кодом.
15 Классы. Фигурой марш! 00:11:52 21 чел. ★ 5 $
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим классы для
хранения и перемещения фигур по клеткам.
16 Классы. Квадратная матрица 00:09:56 21 чел. ★ 5 $
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим класс Board(),
который будет заниматься доской и работать с FEN.
17 Классы. Стой, кто идёт! 00:10:04 21 чел. ★ 5 $
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим класс Moves(),
который будет заниматься проверкой возможности хода.
18 Классы. Шахматная бюрократия 00:07:58 21 чел. ★ 5 $
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы допишем класс Chess().
19 Классы. Консольная доска 00:14:05 21 чел. ★ 5 $
  Мы приступаем к написанию тестов для нашей библиотеки.
На этом уроке мы создадим функционал для отображения доски
и исправим старую ошибку копипаста.
20 Классы. ВТОРОЙ ФИНАЛЬНЫЙ УРОК 00:00:00 20 чел. ★ 4.7 $
  Мы создали все основные классы нашего проекта.
Твоя задача - нарисовать UML схему созданных классов.
Нарисовать схему значительно проще, когда проект уже готов.
Поэтому задание не сложное, но очень, очень полезное и нужное.
Используй иерархическую структуру Solution Explorer в VisualStudio.
Нарисовать можно от руки, либо в сервисе draw.io.
Можно использовать любой другой *не автоматический* инструмент рисования.
Важно сделать это самостоятельно, а не сгенерить программой! Поэтому рисуй сам.

* Не забывайте потом дорисовывать схему в процессе добавления новых методов в классах.
21 Алгоритмы. Волшебные шахматы 00:22:30 18 чел. ★ 5 $
  Мы приступаем к написанию шахматных алгоритмов.
На этом уроке мы добавил в класс Board() необходимые
свойства и реализуем парсинг передаваемого FEN.
22 Алгоритмы. Сборка фена 00:16:34 18 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем формирование
текущей позиции в формате FEN.
23 Алгоритмы. Генератор ходов 00:19:11 16 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы начинаем реализацию проверок
можно ли пойти с одной клетки на другую.
24 Алгоритмы. Куда идёт Король 00:10:43 16 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем проверку
может ли King пойти с одной клетки на другую.
25 Алгоритмы. Ночью с Конём 00:05:05 16 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем проверку
может ли Knight пойти с одной клетки на другую.
26 Алгоритмы. Дальнобойщики 00:17:19 16 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы переходим к дальнобойным фигурам.
27 Алгоритмы. Храбрая пешка 00:19:03 15 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы приступаем к реализации
алгоритмов самой сложной фигуры: Pawn.
28 Алгоритмы. Четвёртое превращение 00:12:27 15 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем превращение Pawn
в одну из четырёх фигур: Queen, Knight, Bishop и Rook.
29 Алгоритмы. Рефакторинг на доске 00:17:03 15 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы займёмся рефакторингом.
30 Алгоритмы. Допрыгалась! 00:21:20 15 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы займёмся взятием пешкой на проходе.
31 Алгоритмы. Королевский паркур 00:25:05 15 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем рокировку.
32 Алгоритмы. Защита короля 00:20:26 15 чел. ★ 5 $
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы будем защищать короля от ШАХа.
33 Алгоритмы. Шах и Мат! 00:09:55 15 чел. ★ 5 $
  Мы заканчиваем написание шахматных алгоритмов.
На этом уроке мы реализуем возврат ситуации на доске.
34 Алгоритмы. ТРЕТИЙ ФИНАЛЬНЫЙ УРОК 00:03:57 15 чел. ★ 5 $
  На этом уроке мы исправим одну ошибку и добавим ещё один вариант метода GetFigureAt(string xy).
Ваше задание - записать подробный отзыв об алгоритмической части проекта.
35 Алгоритмы. VIP. Шахматное супертестирование 00:11:34 15 чел. ★ 5 $
  На этом уроке мы проверим корректность ваших алгоритмов.
Для этого мы прогоним супер-тест по генерации всех вариантов.

* Выполнять этот урок необязательно.

Ссылка:
Сайт с результатами тестирования
36 Алгоритмы. VIP. Можно пройти? 00:02:13 15 чел. ★ 5 $
  На этом уроке мы немного порефакторим и
добавим очень полезную функцию.
37 Алгоритмы. VIP. Как пройти в библиотеку 00:10:35 14 чел. ★ 5 $
  На этом уроке мы подготовим библиотеку ChessRules.
Для этого мы скомпилируем её в необходимой версии .NET
и проверим работоспособность в Unity проекте.
38 Интерфейс. План действий 00:10:23 14 чел. ★ 5 $
  На этом уроке мы обсудим дальнейший план действий.
39 Интерфейс. Генерация объектов 00:16:45 14 чел. ★ 5 $
  На этом уроке мы сгенерируем шахматную доску
с базовыми объектами на ней.
40 Интерфейс. Начальная позиция 00:11:23 13 чел. ★ 5 $
  На этом уроке мы добавим ранее созданную
библиотеку ChessRules.dll в проект на Unity.
41 Интерфейс. Ход делегата 00:10:28 13 чел. ★ 5 $
  На этом уроке мы активируем проверку ходов,
которую реализовали в ChessRules.dll.
42 Интерфейс. Проверка хода 00:09:44 11 чел. ★ 5 $
  На продолжаем реализацию необходимого функционала для
активации проверки ходов на основе ChessRules.dll.
43 Интерфейс. VIP. Клетки отправления 00:09:17 11 чел. ★ 5 $
  Это бонусный урок, выполнять его не обязательно.
На данном уроке мы реализуем подсветку тех клеток,
с которых можно ходить.
44 Интерфейс. VIP. Клетки прибытия 00:09:17 11 чел. ★ 5 $
  Это бонусный урок, выполнять его не обязательно.
На данном уроке мы реализуем подсветку тех клеток,
на которые можно ходить.
45 Интерфейс. Щепотка рефакторинга 00:07:18 11 чел. ★ 5 $
  На этом уроке мы начинаем подготовку к
превращению пешки в одну из четырёх фигур.
Для начала проведём небольшой рефакторинг.
46 Интерфейс. Выставка фигур 00:09:01 11 чел. ★ 5 $
  На этом уроке мы продолжаем подготовку к
превращению пешки в одну из четырёх фигур.
Теперь нам надо подготовить фигуры, в которые будем превращать.
47 Интерфейс. Долгожданное превращение 00:17:16 11 чел. ★ 5 $
  На этом уроке мы наконец превратим
нашу пешку в одну из четырёх фигур.
48 Интерфейс. ЧЕТВЁРТЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00 11 чел. ★ 5 $
  Напишите отзыв о четвёртой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
49 База данных. Management в студию! 00:02:39 11 чел. ★ 5 $
  На этом уроке мы приступаем к созданию БД
для нашего сервера шахматы онлайн.
50 База данных. Планирование 00:17:52 12 чел. ★ 4.9 Free
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы спроектируем схему нашей БД.
51 База данных. Упрощение 00:08:09 11 чел. ★ 4.8 $
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы упростим схему нашей БД.
52 База данных. Созидание 00:06:52 11 чел. ★ 5 $
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы наконец создадим
нашу базу данных для онлайн шахмат.
53 База данных. VIP. Таблицы на вырост 00:12:53 10 чел. ★ 5 $
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы создадим дополнительные таблицы,
которые понадобятся для реализации полноценной онлайн игры.
54 База данных. VIP. Красивая диаграма 00:04:41 10 чел. ★ 5 $
  На данном уроке мы нарисуем диаграмму нашей БД.
55 База данных. ПЯТЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00 10 чел. ★ 5 $
  Напишите отзыв о пятой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
56 Сервер. Последняя версия 00:12:29 10 чел. ★ 5 $
  На данном уроке мы приступаем к созданию
серверной части нашего онлайн проекта по шахматам.
57 Сервер. Райский Эдем - EDM 00:13:23 9 чел. ★ 5 $
  На этом уроке мы создадим EDM - Entity Data Model.
58 Сервер. Новая игра на JSON 00:11:40 9 чел. ★ 5 $
  На этом уроке мы изменим формат вывода с XML на JSON.
59 Сервер. Официант без логики 00:10:07 8 чел. ★ 5 $
  На этом уроке мы будем упрощать наш ChessController.
60 Сервер. Ваш ход! 00:19:29 8 чел. ★ 5 $
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы реализуем выполнение ходов.
61 Сервер. Шахматная Идемпотентность 00:09:34 8 чел. ★ 5 $
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы обсудим Шахматную Идемпотентность.
Напишите своими словами, что такое Идемпотентность.
62 Сервер. Китайская ничья 00:06:28 8 чел. ★ 5 $
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы реализуем завершение игры при сдаче.
63 Сервер. ШЕСТОЙ ФИНАЛЬНЫЙ УРОК 00:00:00 8 чел. ★ 5 $
  Напишите отзыв о шестой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
64 Хостинг. Регистрация аккаунта 00:05:13 7 чел. ★ 5 $
  Приступаем к размещению нашего сервера в интернете.
Для этого нам потребуется Windows-хостинг с поддержкой ASP.NET

Чтобы мы были на одной волне и смогли проработать всё вместе,
пожалуйста зарегистрируйтесь на этом хостинг-сервисе:

Ссылка для регистрации на хостинге: https://www.reg.ru/?rlink=reflink-30461
65 Хостинг. Лучше заплатить 00:11:12 7 чел. ★ 4.9 $
  На этом уроке мы выберем план, доменное имя, укажем контактную информацию.
66 Хостинг. Доступ по FTP 00:10:08 7 чел. ★ 5 $
  На этом уроке мы установим пароль для подключения к хостингу по FTP.

Напишите, какой FTP-клиент вы используете и приложите
скриншот вашей FTP программы с подключением к хостингу.
67 Хостинг. Публикация проекта 00:12:13 7 чел. ★ 5 $
  На этом уроке мы настроим публикацию проекта из Visual Studio.
Выполните все шаги и опубликуйте проект.

Приложите скриншот Visual Studio с логами публикации
и содержимое FTP каталога после публикации.
68 Хостинг. Перенос базы данных 00:11:56 7 чел. ★ 5 $
  На этом уроке мы перенесём базу данных на сервер и подключимся к ней из скрипта.
69 Хостинг. VIP. Двойные стандарты 00:07:32 7 чел. ★ 5 $
  На этом уроке мы обсудим нюансы с публикацией
очередной версии серверной части на хостинге.
70 Хостинг. СЕДЬМОЙ ФИНАЛЬНЫЙ УРОК 00:00:00 7 чел. ★ 5 $
  В этой части мы разместили сервер не хостинге.
Шахматная серверная программа нашла пристанище в интернете.
Наконец-таки можно будет переходить к игре по сети.

Напишите в отчёте, всё ли получилось
и по какому адресу можно найти ваш серверный API.
71 Клиент. Достучаться до облака 00:05:06 7 чел. ★ 5 $
  На этом уроке мы приступаем к завершающему этапу
по созданию клиент-серверной игры "Онлайн шахматы".
72 Клиент. Дедовские методы 00:05:19 7 чел. ★ 5 $
  На этом уроке мы выделим FEN из полученной json строки.
73 Клиент. Ход в мешке 00:15:23 7 чел. ★ 5 $
  На этом уроке мы научимся отправлять на сервер наш ход.
74 Клиент. Серверные пешки 00:05:25 7 чел. ★ 5 $
  На этом уроке мы используем ранее созданный класс Client()
в наш проект на Unity, чтобы можно было поиграть с GUI.
75 Клиент. Следы невиданных ходов 00:07:25 7 чел. ★ 5 $
  На этом уроке мы реализуем отправку хода через GUI.
76 Клиент. Фоновое обновление 00:11:50 7 чел. ★ 5 $
  На этом уроке мы реализуем функцию
обновления текущего состояния на доске.
77 Клиент. ВОСЬМОЙ ФИНАЛЬНЫЙ УРОК 00:03:01 6 чел. ★ 5 $
  Поздравляю вас с завершением нашего эпического курса
по созданию клиент-серверной игры в шахматы по сети!

Запишите живое видео, где будет видно, что в игру
можно поиграть с двух разных устройств/компьютеров.

Расскажите на видео о своём подвиге.
Чем курс понравился, что было сложно,
что было интересно, что можно будет добавить.
78 Рефакторинг. С чего начать? 00:05:39 6 чел. ★ 5 $
  На этом уроке мы начинаем рефакторинг
кода клиентской части на Unity.
79 Рефакторинг. Координатные трансформации 00:14:04 6 чел. ★ 5 $
  На этом уроке мы продолжаем рефакторинг
и сейчас мы выделим статические элементы.
80 Рефакторинг. Чёрный ящик 00:07:38 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы займёмся словарями.
81 Рефакторинг. Интерфейсная прослойка 00:10:35 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим интерфейс ICreatable.
82 Рефакторинг. Ящик с фигурами 00:04:16 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы сделаем класс Box() абстрактным.
83 Рефакторинг. Многоклеточная сущность 00:06:48 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс BoxSquares().
84 Рефакторинг. Вынос переноса 00:02:34 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс Box().SetPosition().
85 Рефакторинг. Спрайт, не дай себя заинтерфейсить 00:07:18 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс Box().SetSpriteAt().
86 Рефакторинг. Клетка в клетке 00:04:46 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы перенесём и разделим класс ShowSquare().
87 Рефакторинг. Шахматная независимость 00:07:23 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы перенесём некоторые функции в класс BoxSquares().
88 Рефакторинг. Хоровод из четырёх фигур 00:14:37 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы порефакторим функционал превращения пешки.
89 Рефакторинг. Волшебник изумрудного ящика 00:18:39 6 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс BoxPromots().
90 Рефакторинг. Потерянная пешка 00:36:59 6 чел. ★ 5 $
  На этом уроке мы вернёмся к нашей библиотеке
для исправления старой ошибки: пешка может
превратиться в чужую фигуру ил остаться пешкой.
91 Рефакторинг. Класс шахматной игры 00:13:15 6 чел. ★ 5 $
  Мы на финишной прямой нашего рефакторинга.
На данном уроке мы вынесем логику игры в отдельный класс Game().
92 Рефакторинг. Двухэтажное превращение 00:16:50 6 чел. ★ 5 $
  Мы всё ближе и ближе к финишу нашего рефакторинга.
На данном уроке мы вынесем оставшуюся логику игры в класс Game().
93 Рефакторинг. Финальное причёсывание 00:06:58 6 чел. ★ 5 $
  Мы поздравляем тебя с завершением рефакторинга.
На данном уроке мы причешем наши скрипты.
94 Рефакторинг. Последний аккорд 00:14:10 6 чел. ★ 5 $
  На этом уроке мы заканчиваем наш эпический курс.
Получилось здорово.
Я доволен результатом.
Надеюсь, вы тоже.
Мы проделали огромную работу.
Каждый стал чуточку умнее и опытнее.
95 VIP. Меню DimanDOSа 00:27:50 4 чел. ★ 5 $
  1. Создание и размещение кнопки вызова меню и панели с кнопками.
2. Программирование действий по нажатиям кнопок -
создание функций и привязка их к событиям нажатия.
  Итого:   95 видеоуроков общей продолжительностью 17 час. 01 мин. 4 чел. ★ 4.99  
  Финалисты:   Дмитрий,   Yefim,   Tekashnik,   Иван Воронин .

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




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

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

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

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


Научился: Отличный курс. Настоятельно рекомендую вне зависимости от пояса по С# ;))) Огромные выжимки практического полезного материала, который хоть и конечен в данной стадии, но всячески намекает и подталкивает "еще немножечко покопаться и поковырять личные фишки".



Научился: завершил, видео записал только с демонстрацией работы на PC и Android. Рекомендаций давать не буду - Вы обижаетесь :-)