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

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

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

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

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

После взноса  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:06:08
3 теста
94 чел. ★ 4.9 Done
  Мы начинаем создание клиент-серверной программы для игры в Шахматы по сети.
Это комплекс программных решений с исользованием: C#, ASP.NET, MS-SQL, EF, Unity
В результате мы создадим сервер, через который клиенты
смогут играть друг с другом в шахматы со смартфона.

Записаться на курс
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 8 мин. [Показать отчёт]
Научился: Урок 1. 
2 Доска. Установка Unity 3D 00:05:17
86 чел. ★ 4.9 Done
  Цель этого урока - установить Unity и набрать несколько строчек шахматных терминов.

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

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

Скачать архив с картинками: https://yadi.sk/d/irBRduLp3SseXY

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 16 мин. [Показать отчёт]
Научился: Урок 2 
3 Доска. Фигуры 00:13:05
62 чел. ★ 5 Done
  На этом уроке мы разместим доску с фигурами.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 24 мин. [Показать отчёт]
Научился: Done! 
4 Доска. Состояния переноса 00:11:29
64 чел. ★ 5 Done
  На этом уроке мы начнём процесс Drag-n-Drop и обсудим все состояния,
через которые проходит объект в процессе переноса.
Создадим скрипт, класс, перечисление, конструктор и метод Action.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 15 мин. [Показать отчёт]
Научился: Done! 
5 Доска. Подцеп фигуры 00:12:05
61 чел. ★ 5 Done
  На этом уроке мы найдём фигуру, по которой кликнул пользователь.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 24 мин. [Показать отчёт]
Научился: Done! 
6 Доска. Смещение 00:07:57
59 чел. ★ 4.9 Done
  На этом уроке мы допишем перенос фигуры и учтём смещение при клике.
Теперь вы сможете разыграть любую партию - сделайте скриншот интересной позиции!
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 13 мин. [Показать отчёт]
Научился: Done! 
7 Доска. Запуск на Windows 00:05:57
59 чел. ★ 5 Done
  На этом уроке мы создадим независимый билд (рабочая версия)
нашей игры для платформы Windows.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 8 мин. [Показать отчёт]
Научился: Done! 
8 Доска. ПЕРВЫЙ ФИНАЛЬНЫЙ УРОК 00:02:32
54 чел. ★ 4.8 Done
  Мы закончили первую часть курса,
создали шахматную доску,
запустили её на Windows.

Напишите отзыв о первой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 3 мин. [Показать отчёт]
Научился: Done! 
9 Доска. VIP. Запуск на Android 00:10:00
53 чел. ★ 4.8 Done
  На этом уроке мы запустим нашу доску на операционной системе Android.
Приготовьте свой планшет/телефон и приступайте к эскпорту и запуску!
* Выполнять этот урок не обязательно.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 23 мин. [Показать отчёт]
Научился: Done! 
10 Доска. VIP. Запуск в Интернете 00:11:24
53 чел. ★ 4.9 Done
  На этом уроке мы отправим наш проект в Интернет.
Для этого мы воспользуемся технологией WebGL.
Генерация страницы занимает продолжительное время.
Засеки момент начала и напиши в отчете сколько времени это заняло.

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

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 24 мин. [Показать отчёт]
Научился: Done! 
11 FREE Классы. Архитектура проекта 00:19:24
1 тест
64 чел. ★ 5 Done
  На этом уроке мы познакомимся с архитектурой проекта,
посмотрим на предстоящее путешествие с высоты птичьего полёта.
Задание: написать, что для вас в этом плане самое простое, а что - самое сложное.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 28 мин. [Показать отчёт]
Научился: Есть базовый опыт с Unity и немного ООП на C#. Купил курс ради практики ООП и клиент-сервера как раз. Так что здесь пока всё туманно. 
12 Классы. Шахматная библиотека 00:15:22
2 теста
53 чел. ★ 4.9 Done
  На данном уроке мы начинаем создание шахматных классов на языке C#, которые позволят проверять правила игры.
Для этого мы напишем библиотеку, которая сможет для любой шахматной позиции определить возможность любого хода.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 7 мин. [Показать отчёт]
Научился: Done!  
Сложности: Не понимаю, как вывести доску. Догадываюсь, что надо преобразовать fen и расставить через двойной цикл. 
13 Классы. Цветная фигура 00:10:21
53 чел. ★ 4.9 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы рассмотри схему библиотеки dll,
которая поможет нам сориентироваться в дальнейших действиях.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 день 2 час. 51 мин. [Показать отчёт]
Научился: Done! 
14 Классы. Квадратная площадь 00:14:59
52 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим структуру классов
с минимально необходимым кодом.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 56 мин. [Показать отчёт]
Научился: Done! 
15 Классы. Фигурой марш! 00:11:52
51 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим классы для
хранения и перемещения фигур по клеткам.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 20 мин. [Показать отчёт]
Научился: Done! 
16 Классы. Квадратная матрица 00:09:56
51 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим класс Board(),
который будет заниматься доской и работать с FEN.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 19 час. 13 мин. [Показать отчёт]
Научился: Done! 
17 Классы. Стой, кто идёт! 00:10:04
51 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим класс Moves(),
который будет заниматься проверкой возможности хода.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 40 мин. [Показать отчёт]
Научился: Done! 
18 Классы. Шахматная бюрократия 00:07:58
50 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы допишем класс Chess().
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 14 мин. [Показать отчёт]
Научился: Done! 
Сложности: Долго не мог разобраться с возвращаемым значением Fen для класса Chess. По идее, если он первичен, и дальше через его конструктор идёт создание новой доски, и уже туда посылается новый Fen, то не очень понятно зачем мы из класса Board берём значение Fen. Проверил, что может быть в момент хода используется ссылка напрямую Board.Fen, но нет, оттуда только проверка на цвет делается. К тому же нам путанится наблюдается. В вашем случае при инициализаци конструктора Chess(string fen) внутри него создаётся new Board (fen) - т.к. у вас и поле класса и название параметра с маленькой буквы, долго не мог какое значение берётся, но ведь берётся же в этом случае приоритет из параметра. А параметр fen по-умолчанию задан на стандартную позицию.  Тогда зачем нужно поле Fen классу Chess, оно уже получается дублируется. Короче, я там поменял немного результат в расчёте на то, что каждый ход будет пересоздаваться класс Chess, и уже через него всё остальное. Если что потом переделаю обратно. 
19 Классы. Консольная доска 00:14:05
1 тест
49 чел. ★ 5 Done
  Мы приступаем к написанию тестов для нашей библиотеки.
На этом уроке мы создадим функционал для отображения доски
и исправим старую ошибку копипаста.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 6 мин. [Показать отчёт]
Научился: Done! Ткну пальцем в небо -- сложнее всего запрограммировать пешку, потому что у неё максимально не стандартное движение. Во-первых у неё есть строгий вектор движения. Плюс в зависимости от атаки и/или взятия на проходе, её ход может быть диагональным, т.к. атака это тоже ход в случае шахмат. А легче всего короля\ладью, в зависимости от того, учитывать ли шахи. Если без их учёта, думаю что короля, т.к. там тупо +1 во все стороны по прямой. Если с учётом, тогда потребуется дополнительная логика и, вероятно, проще будет ладья, т.к. там во все стороны по прямой до конца доски или встречи фигуры противоположенного класса. 
20 Классы. ВТОРОЙ ФИНАЛЬНЫЙ УРОК 00:00:00
49 чел. ★ 4.8 Done
  Мы создали все основные классы нашего проекта.
Твоя задача - нарисовать UML схему созданных классов.
Нарисовать схему значительно проще, когда проект уже готов.
Поэтому задание не сложное, но очень, очень полезное и нужное.
Используй иерархическую структуру Solution Explorer в VisualStudio.
Нарисовать можно от руки, либо в сервисе draw.io.
Можно использовать любой другой *не автоматический* инструмент рисования.
Важно сделать это самостоятельно, а не сгенерить программой! Поэтому рисуй сам.

* Не забывайте потом дорисовывать схему в процессе добавления новых методов в классах.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 38 мин. [Показать отчёт]
Научился: Done! 
Сложности: Разобраться в соединениях одних классов с другими. 
21 Алгоритмы. Волшебные шахматы 00:22:30
1 тест
47 чел. ★ 5 Done
  Мы приступаем к написанию шахматных алгоритмов.
На этом уроке мы добавил в класс Board() необходимые
свойства и реализуем парсинг передаваемого FEN.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 2 час. 56 мин. [Показать отчёт]
Научился: Done! 
Сложности: Понять, как строка "lines[7 - y][x]" возвращает символ 114 'r'.  Забыл, что мы раскладываем fen-нотацию, которая уже разложилась в массив. Пытался искать по всем классам эти данные. Как понял, оказалось, что это было очевидно. 
22 Алгоритмы. Сборка фена 00:16:34
1 тест
46 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем формирование
текущей позиции в формате FEN.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 56 мин. [Показать отчёт]
Научился: Done! 
Сложности: Перестала компилироваться программа. Никаких ошибок, ничего. В итоге чего я только не делал. Оказалось в ChessDemo функция Main НЕ была static. При этом до этого урока всё отлично работало. Не понимаю, что изменилось... 
23 Алгоритмы. Генератор ходов 00:19:11
1 тест
43 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы начинаем реализацию проверок
можно ли пойти с одной клетки на другую.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 54 мин. [Показать отчёт]
Научился: Done! 
Сложности: Осознание процесса реализации yield функции в разных местах программы и то как это записывается. 
24 Алгоритмы. Куда идёт Король 00:10:43
1 тест
42 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем проверку
может ли King пойти с одной клетки на другую.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 36 мин. [Показать отчёт]
Научился: Done! Проверка для коня: return FigureMoving.AbsDeltaX == 2 && FigureMoving.AbsDeltaY == 1         || FigureMoving.AbsDeltaY == 2 && FigureMoving.AbsDeltaX == 1; 
25 Алгоритмы. Ночью с Конём 00:05:05
1 тест
42 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем проверку
может ли Knight пойти с одной клетки на другую.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 5 мин. [Показать отчёт]
Научился: Done! 
26 Алгоритмы. Дальнобойщики 00:17:19
1 тест
42 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы переходим к дальнобойным фигурам.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 39 мин. [Показать отчёт]
Научился: Done! 
27 Алгоритмы. Храбрая пешка 00:19:03
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы приступаем к реализации
алгоритмов самой сложной фигуры: Pawn.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 44 мин. [Показать отчёт]
Научился: Done! 
Сложности: До решения, самым сложным было представить, как разбить действие пешки в рамках одной функции, но в итоге в очередной раз выяснилось, что мы ничем не ограничены и ничего нам не мешает вернуть логическое условие сразу с тремя методами. 
28 Алгоритмы. Четвёртое превращение 00:12:27
1 тест
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем превращение Pawn
в одну из четырёх фигур: Queen, Knight, Bishop и Rook.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 35 мин. [Показать отчёт]
Научился: Done! 
29 Алгоритмы. Рефакторинг на доске 00:17:03
1 тест
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы займёмся рефакторингом.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 31 мин. [Показать отчёт]
Научился: Done! 
Сложности: Не понятно в чём фишка неизменяемости класса внутри класса. Зачем это, что даёт, где можно про этом подробнее почитать. 
30 Алгоритмы. Допрыгалась! 00:21:20
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы займёмся взятием пешкой на проходе.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 57 мин. [Показать отчёт]
Научился: Done! 
Сложности: Представить, что я могу сделать это всё самостоятельно. 
31 Алгоритмы. Королевский паркур 00:25:05
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем рокировку.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 17 час. 21 мин. [Показать отчёт]
Научился: Done! 
32 Алгоритмы. Защита короля 00:20:26
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы будем защищать короля от ШАХа.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 7 час. 8 мин. [Показать отчёт]
Научился: Прогнал через дебагер игру и сейчас получается, что из-за проверки на шах и потенциального хода, который запускает функцию Move, а та в свою очередь запускает конструктор NextBoard, где задаются жизненно важные для игры состояния помимо самой доски, доска, а следовательно и все остальное пересоздается перед каждой проверкой любого потенциального хода из ранее оставшихся. Странно, что программа вообще работает, там ведь и генерация FEN и цвет игрока и номер хода и много чего ещё. Выглядит так себе. 
33 Алгоритмы. Шах и Мат! 00:09:55
41 чел. ★ 5 Done
  Мы заканчиваем написание шахматных алгоритмов.
На этом уроке мы реализуем возврат ситуации на доске.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 41 мин. [Показать отчёт]
Научился: Done! 
34 Алгоритмы. ТРЕТИЙ ФИНАЛЬНЫЙ УРОК 00:03:57
41 чел. ★ 5 Done
  На этом уроке мы исправим одну ошибку и добавим ещё один вариант метода GetFigureAt(string xy).
Ваше задание - записать подробный отзыв об алгоритмической части проекта.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 11 мин. [Показать отчёт]
Научился: Как я уже писал ранее -- единственное что смущает, это реализация проверки ходов на шах, где создаётся новый Move. При том, что Move отвечает не только за генерацию новой доски, но и служебные функции. И при этом новый Move создаётся перед проверкой КАЖДОГО потенциального хода, коих могут быть десятки. Я не эксперт, но кажется что это мега расточительно и вообще не правильно. В остальном нахожусь под большим впечатлением. Очень лаконичные решения. Хочется продолжать дальше :-) 
35 Алгоритмы. VIP. Шахматное супертестирование 00:11:34
41 чел. ★ 5 Done
  На этом уроке мы проверим корректность ваших алгоритмов.
Для этого мы прогоним супер-тест по генерации всех вариантов.

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

Ссылка:
Сайт с результатами тестирования

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 8 мин. [Показать отчёт]
Научился: Done 
Сложности: Разобраться как работает рекурсивный алгоритм 
36 Алгоритмы. VIP. Можно пройти? 00:02:13
41 чел. ★ 5 Done
  На этом уроке мы немного порефакторим и
добавим очень полезную функцию.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 4 мин. [Показать отчёт]
Научился: Done! 
37 Алгоритмы. VIP. Как пройти в библиотеку 00:10:35
40 чел. ★ 5 Done
  На этом уроке мы подготовим библиотеку ChessRules.
Для этого мы скомпилируем её в необходимой версии .NET
и проверим работоспособность в Unity проекте.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 21 мин. [Показать отчёт]
Научился: Done! 
Сложности: Привет из 2024. Начал проект на .Net Core. Framework'a вообще не было в списке. Разобрался, как его переключить. Потом оказалось что 3.5 устарел, его нет в списке. Минимальный 4.0, благо Unity 2022 поддерживает 4.х, как я узнал из документации. Выставил Net Framework 4.8.1 (последний на сегодня из 4-ки), после чего весь синтаксический новодел отвалился и пришлось ручками править. В итоге всё получилось! 
38 Интерфейс. План действий 00:10:23
40 чел. ★ 5 Done
  На этом уроке мы обсудим дальнейший план действий.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 56 мин. [Показать отчёт]
Научился: Done! 
39 Интерфейс. Генерация объектов 00:16:45
40 чел. ★ 5 Done
  На этом уроке мы сгенерируем шахматную доску
с базовыми объектами на ней.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 41 мин. [Показать отчёт]
Научился: Done! 
40 Интерфейс. Начальная позиция 00:11:23
39 чел. ★ 5 Done
  На этом уроке мы добавим ранее созданную
библиотеку ChessRules.dll в проект на Unity.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 2 час. 6 мин. [Показать отчёт]
Научился: Done! 
41 Интерфейс. Ход делегата 00:10:28
39 чел. ★ 5 Done
  На этом уроке мы активируем проверку ходов,
которую реализовали в ChessRules.dll.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 21 мин. [Показать отчёт]
Научился: Done! 
42 Интерфейс. Проверка хода 00:09:44
37 чел. ★ 5 Done
  Мы продолжаем реализацию необходимого функционала для
активации проверки ходов на основе ChessRules.dll.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 31 мин. [Показать отчёт]
Научился: Done! Вариант реализации. Создать панельку с 4 кнопками, по-умолчанию панелька не активана. Активируется при уведомлении о срабатывании метода Promotion. На панельке 4 кнопку. На всех ивенты по нажатию. Нажатие меняет спрайт и первую букву в зависимости от изображенной фигуры. После чего панелька снова становится неактивной. 
43 Интерфейс. VIP. Клетки отправления 00:09:17
37 чел. ★ 4.9 Done
  Это бонусный урок, выполнять его не обязательно.
На данном уроке мы реализуем подсветку тех клеток,
с которых можно ходить.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 20 мин. [Показать отчёт]
Научился: Done! 
44 Интерфейс. VIP. Клетки прибытия 00:09:17
1 тест
37 чел. ★ 4.9 Done
  Это бонусный урок, выполнять его не обязательно.
На данном уроке мы реализуем подсветку тех клеток,
на которые можно ходить.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 30 мин. [Показать отчёт]
Научился: Done! 
45 Интерфейс. Щепотка рефакторинга 00:07:18
1 тест
37 чел. ★ 4.9 Done
  На этом уроке мы начинаем подготовку к
превращению пешки в одну из четырёх фигур.
Для начала проведём небольшой рефакторинг.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 2 час. 53 мин. [Показать отчёт]
Научился: Done! 
46 Интерфейс. Выставка фигур 00:09:01
37 чел. ★ 4.9 Done
  На этом уроке мы продолжаем подготовку к
превращению пешки в одну из четырёх фигур.
Теперь нам надо подготовить фигуры, в которые будем превращать.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 18 мин. [Показать отчёт]
Научился: Done 
47 Интерфейс. Долгожданное превращение 00:17:16
36 чел. ★ 5 Done
  На этом уроке мы наконец превратим
нашу пешку в одну из четырёх фигур.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 35 мин. [Показать отчёт]
Научился: Done! Добавить условие через И, что белая пешка может идти только с 7 горизонтали (figure == "P" && e4[1] == '8' && e2[1] == '7'), а чёрная со 2-й. 
48 Интерфейс. ЧЕТВЁРТЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00
37 чел. ★ 4.9 Done
  Напишите отзыв о четвёртой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 6 мин. [Показать отчёт]
Научился: Я уже был знаком с Unity и в целом ожидал, что здесь конкретно Unity часть скорее всего будет слабой. Так и вышло, но это совершенно не проблема. Более того, мне даже нравится, потому что такой подход позволяет сделать игру практически на чём угодно. То есть с самого начала мне наоборот было интересно, как можно сделать шахматы минимально используя инстументы Unity.  И вся эта история с компиляцией и затем импортом библиотеки в движок, это всё мне было очень интересно. Ничего подобного раньше не видел. Жду недождусь, когда дойдём до серверной части, в ней я полный ноль. Благо, осталось совсем ничего :-) 
49 База данных. Management в студию! 00:02:39
35 чел. ★ 4.9 Done
  На этом уроке мы приступаем к созданию БД
для нашего сервера шахматы онлайн.

Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 6 мин. [Показать отчёт]
Научился: Done! 
50 База данных. Планирование 00:17:52
37 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы спроектируем схему нашей БД.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 25 мин. [Показать отчёт]
Научился: Done! 
51 База данных. Упрощение 00:08:09
36 чел. ★ 4.8 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы упростим схему нашей БД.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 12 мин. [Показать отчёт]
Научился: Хотелось бы промежуточный вариант, чтобы понять, как создавать линки между разными таблицами.   
52 База данных. Созидание 00:06:52
35 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы наконец создадим
нашу базу данных для онлайн шахмат.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 14 мин. [Показать отчёт]
Научился: Done! 
53 База данных. VIP. Таблицы на вырост 00:12:53
34 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы создадим дополнительные таблицы,
которые понадобятся для реализации полноценной онлайн игры.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 33 мин. [Показать отчёт]
Научился: Done! 
54 База данных. VIP. Красивая диаграма 00:04:41
34 чел. ★ 4.9 Done
  На данном уроке мы нарисуем диаграмму нашей БД.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 15 мин. [Показать отчёт]
Научился: Done! 
55 База данных. ПЯТЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00
34 чел. ★ 4.8 Done
  Напишите отзыв о пятой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 4 мин. [Показать отчёт]
Научился: Очень хорошо, что мы сделали также и более сложную реализацию. По-крайней мере теперь понятно, как устанавливать связи между таблицами. Ощущения от пятой части положительные.  
56 Сервер. Последняя версия 00:12:29
33 чел. ★ 5 Done
  На данном уроке мы приступаем к созданию
серверной части нашего онлайн проекта по шахматам.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 2 час. 38 мин. [Показать отчёт]
Научился: Done! 
Сложности: Создать проект. После долгих плясок с бубном с разными web template (не .net framework), додумался зайти в установщике в сам asp.net и там поставить галочку - загрузить .net framework templates. Lol 
57 Сервер. Райский Эдем - EDM 00:13:23
32 чел. ★ 5 Done
  На этом уроке мы создадим EDM - Entity Data Model.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 16 мин. [Показать отчёт]
Научился: Done! 
58 Сервер. Новая игра на JSON 00:11:40
32 чел. ★ 5 Done
  На этом уроке мы изменим формат вывода с XML на JSON.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 17 мин. [Показать отчёт]
Научился: Done! 
59 Сервер. Официант без логики 00:10:07
32 чел. ★ 5 Done
  На этом уроке мы будем упрощать наш ChessController.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 18 мин. [Показать отчёт]
Научился: Done! 
60 Сервер. Ваш ход! 00:19:29
32 чел. ★ 5 Done
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы реализуем выполнение ходов.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 26 мин. [Показать отчёт]
Научился: Может не стоит начинать новую игру сразу автоматически? В идеале оба игрока должны сначала подтвердить готовность, но тут понятно, что так не будет. Возможно сделать сначала пустой ход, а уже потом начать игру. Пустой ход мы однажды делали. 
61 Сервер. Шахматная Идемпотентность 00:09:34
32 чел. ★ 5 Done
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы обсудим Шахматную Идемпотентность.
Напишите своими словами, что такое Идемпотентность.
Отчёт отправил: 37216. Aleksei Petrovskii Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Done! 
62 Сервер. Китайская ничья 00:06:28
31 чел. ★ 5 Open
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы реализуем завершение игры при сдаче.
63 Сервер. ШЕСТОЙ ФИНАЛЬНЫЙ УРОК 00:00:00
31 чел. ★ 4.8 $
  Напишите отзыв о шестой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
64 Хостинг. Регистрация аккаунта 00:05:13
31 чел. ★ 4.9 $
  Приступаем к размещению нашего сервера в интернете.
Для этого нам потребуется Windows-хостинг с поддержкой ASP.NET

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

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

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

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

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

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

Расскажите на видео о своём подвиге.
Чем курс понравился, что было сложно,
что было интересно, что можно будет добавить.
78 Рефакторинг. С чего начать? 00:05:39
24 чел. ★ 5 $
  На этом уроке мы начинаем рефакторинг
кода клиентской части на Unity.
79 Рефакторинг. Координатные трансформации 00:14:04
24 чел. ★ 5 $
  На этом уроке мы продолжаем рефакторинг
и сейчас мы выделим статические элементы.
80 Рефакторинг. Чёрный ящик 00:07:38
24 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы займёмся словарями.
81 Рефакторинг. Интерфейсная прослойка 00:10:35
24 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим интерфейс ICreatable.
82 Рефакторинг. Ящик с фигурами 00:04:16
1 тест
24 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы сделаем класс Box() абстрактным.
83 Рефакторинг. Многоклеточная сущность 00:06:48
24 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс BoxSquares().
84 Рефакторинг. Вынос переноса 00:02:34
24 чел. ★ 4.9 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс Box().SetPosition().
85 Рефакторинг. Спрайт, не дай себя заинтерфейсить 00:07:18
24 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс Box().SetSpriteAt().
86 Рефакторинг. Клетка в клетке 00:04:46
24 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы перенесём и разделим класс ShowSquare().
87 Рефакторинг. Шахматная независимость 00:07:23
24 чел. ★ 5 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы перенесём некоторые функции в класс BoxSquares().
88 Рефакторинг. Хоровод из четырёх фигур 00:14:37
24 чел. ★ 4.9 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы порефакторим функционал превращения пешки.
89 Рефакторинг. Волшебник изумрудного ящика 00:18:39
24 чел. ★ 4.9 $
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс BoxPromots().
90 Рефакторинг. Потерянная пешка 00:36:59
24 чел. ★ 4.9 $
  На этом уроке мы вернёмся к нашей библиотеке
для исправления старой ошибки: пешка может
превратиться в чужую фигуру ил остаться пешкой.
91 Рефакторинг. Класс шахматной игры 00:13:15
23 чел. ★ 4.8 $
  ЭТОТ УРОК НУЖНО ПЕРЕЗАПИСАТЬ. ДЛЯ ЭТОГО МНЕ НУЖЕН ПРОЕКТ ДО ЕГО ВЫПОЛНЕНИЯ.
ПОЖАЛУЙСТА ПЕРЕД ВЫПОЛНЕНИЕМ ЭТОГО УРОКА СОЗДАЙТЕ АРХИВ ПРОЕКТА И ПРИШЛИТЕ ЕГО МНЕ.

Мы на финишной прямой нашего рефакторинга.
На данном уроке мы вынесем логику игры в отдельный класс Game().
92 Рефакторинг. Двухэтажное превращение 00:16:50
22 чел. ★ 5 $
  Мы всё ближе и ближе к финишу нашего рефакторинга.
На данном уроке мы вынесем оставшуюся логику игры в класс Game().
93 Рефакторинг. Финальное причёсывание 00:06:58
22 чел. ★ 5 $
  Мы поздравляем тебя с завершением рефакторинга.
На данном уроке мы причешем наши скрипты.
94 Рефакторинг. Последний аккорд 00:14:10
23 чел. ★ 4.9 $
  На этом уроке мы заканчиваем наш эпический курс.
Получилось здорово.
Я доволен результатом.
Надеюсь, вы тоже.
Мы проделали огромную работу.
Каждый стал чуточку умнее и опытнее.
95 VIP. Меню DimanDOSа 00:27:50
20 чел. ★ 5 $
  1. Создание и размещение кнопки вызова меню и панели с кнопками.
2. Программирование действий по нажатиям кнопок -
создание функций и привязка их к событиям нажатия.
  Итого:   95 видеоуроков 17 час. 04 мин.
18 тестов
19 чел. ★ 4.96  
  Финалисты:   Дмитрий,   Yefim,   Tekashnik,   Иван Воронин,   ser2018,   Алексей,   Дмитрий Б,   alklokov,   FireWolf,   Andrew,   Max,   Новопашин Владимир,   Красимир Зорбов,   Антон,   Евгений,   Anatoli,   Freud,   Алена,   MaxB .

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





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

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

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

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


Научился: получили минимально рабочую версию, дальше нужно что то "прикручивать" по усмотрению и способностям



Научился: Научился делать сетевые шахматы на юнити под разные платформы. Были подробно рассмотрены шахматные алгоритмы и проверка правильности ходов, создание веб сервера с базой данных для сохранения игр и связи между игроками. Для полноты игры осталось добавить невозможность играть фигурами соперника, звуки, авторизацию пользователей и подобные украшательства. Ну и ещё рефакторинг...
Трудности: Решить некоторые возникающие в процессе создания игры ошибки, что, однако, дало бесценный опыт на будущее :)