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

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

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

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

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

После взноса  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
В результате мы создадим сервер, через который клиенты
смогут играть друг с другом в шахматы со смартфона.

Записаться на курс
Отчёт отправил: 30329. Алена Выполнено за 10 мин. [Показать отчёт]
Научился: Ознакомилась с планом предстоящих работ. Запись видео удобнее смотреть в ускоренном режиме (x2 к примеру), отчет же не отправить до истечения таймера 6:08, что не очень удобно.  
Сложности: Дождаться таймера когда видео уже просмотрено. 
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

Отчёт отправил: 30329. Алена Выполнено за 15 мин. [Показать отчёт]
Научился: Попрактиковался слепой печати/ 130 символов/30 ошибок 
Сложности: напечатать fen 
3 Доска. Фигуры 00:13:05
62 чел. ★ 5 Done
  На этом уроке мы разместим доску с фигурами.

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

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

Напишите отзыв о первой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 30329. Алена Выполнено за 12 мин. [Показать отчёт]
Научился: Я, вместо дневного занятия, посмотрела ролик без какого-то содержания. Мне кажется, логично было бы не тратить байты на данный видеоурок (урок является обязательный и проходить курс дальше без прохождения данного урока нельзя). Сам курс просто супер, прохожу с перевеликим удовольствием! 
9 Доска. VIP. Запуск на Android 00:10:00
53 чел. ★ 4.8 Done
  На этом уроке мы запустим нашу доску на операционной системе Android.
Приготовьте свой планшет/телефон и приступайте к эскпорту и запуску!
* Выполнять этот урок не обязательно.

Отчёт отправил: 30329. Алена Выполнено за 28 мин. [Показать отчёт]
Научился: Посмотрела как устанавливается приложение на android устройство. К сожалению, у меня не установлен компонент для билда на unity, когда выбираю доставить компонент - он предлагает установить для других версий. Может, билд на андроид не для бесплатной версии unity? 
Сложности: Не установлен компонент для build на android device. Причем как-то странно, установлена версия 2019.4.22f1, check for updates говорит, что версия последняя (2019 это же не год, правда?)), а смотрю release notes и там версии 2020* и 2021* есть. ЧЯДНТ? 
10 Доска. VIP. Запуск в Интернете 00:11:24
53 чел. ★ 4.9 Done
  На этом уроке мы отправим наш проект в Интернет.
Для этого мы воспользуемся технологией WebGL.
Генерация страницы занимает продолжительное время.
Засеки момент начала и напиши в отчете сколько времени это заняло.

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

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

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

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

Отчёт отправил: 30329. Алена Выполнено за 29 мин. [Показать отчёт]
Научился: Еще раз вспомнила про метода расширения, поняла принцип проверок. Ошибка же при движении на точку - не цвет доски нужно сравнивать, а цвет фигуры в этом месте на доске, верно? 
18 Классы. Шахматная бюрократия 00:07:58
50 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы допишем класс Chess().
Отчёт отправил: 30329. Алена Выполнено за 13 мин. [Показать отчёт]
Научился: Апнула скил печати + 0.0001%. А если серьезно, то что все понятно, поэтому в основном продвинулась в понимании логики взаимодействия классов. 
19 Классы. Консольная доска 00:14:05
1 тест
49 чел. ★ 5 Done
  Мы приступаем к написанию тестов для нашей библиотеки.
На этом уроке мы создадим функционал для отображения доски
и исправим старую ошибку копипаста.

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

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

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

Отчёт отправил: 30329. Алена Выполнено за 26 мин. [Показать отчёт]
Научился: Никогда еще победа в шахматах не была такой легкой! Главное правило - играй за белых) 
22 Алгоритмы. Сборка фена 00:16:34
1 тест
46 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем формирование
текущей позиции в формате FEN.

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

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

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

Отчёт отправил: 30329. Алена Выполнено за 21 мин. [Показать отчёт]
Научился: Жаль, ноут слабенький, даже небольшое количество полуходов приводит к натужному гедению кулеров и приличному времени ожидания. Самой ближайшей проверкой оказалась проверка на шахи, что и удалось легко реализовать. 
36 Алгоритмы. VIP. Можно пройти? 00:02:13
41 чел. ★ 5 Done
  На этом уроке мы немного порефакторим и
добавим очень полезную функцию.
Отчёт отправил: 30329. Алена Выполнено за 11 мин. [Показать отчёт]
Научился: Мне кажется, что красивее и понятнее было бы назвать метод "ХодНеВалиден" и инвертировать логику. Если ход не сделать или после хода будет шах - значит ХодНеВалиден, значит return this. 
37 Алгоритмы. VIP. Как пройти в библиотеку 00:10:35
40 чел. ★ 5 Done
  На этом уроке мы подготовим библиотеку ChessRules.
Для этого мы скомпилируем её в необходимой версии .NET
и проверим работоспособность в Unity проекте.

Отчёт отправил: 30329. Алена Выполнено за 10 мин. [Показать отчёт]
Научился: На текущей версии можно без проблем использовать .net framework 4.7.1. Если предполагается вносить изменения в сами chess rules при работе с unity, имеет смысл переопределить build forlder на папку со скриптами для unity чтобы при каждом билде не копировать вручную. Не знаю почему так произошло, но у меня скрипт создается просто скриптом, вне солюшена - там просто нет references. Пришлось вручную добавлять solution и там размещать скрипт, чтобы можно было добавить ссылку на ChessRules. 
38 Интерфейс. План действий 00:10:23
40 чел. ★ 5 Done
  На этом уроке мы обсудим дальнейший план действий.
Отчёт отправил: 30329. Алена Выполнено за 20 мин. [Показать отчёт]
Научился: Пока все понятно 
39 Интерфейс. Генерация объектов 00:16:45
40 чел. ★ 5 Done
  На этом уроке мы сгенерируем шахматную доску
с базовыми объектами на ней.
Отчёт отправил: 30329. Алена Выполнено за 43 мин. [Показать отчёт]
Научился: Все супер! 
40 Интерфейс. Начальная позиция 00:11:23
39 чел. ★ 5 Done
  На этом уроке мы добавим ранее созданную
библиотеку ChessRules.dll в проект на Unity.

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

Отчёт отправил: 30329. Алена Выполнено за 12 мин. [Показать отчёт]
Научился: Понять принцип работы делегата. 
42 Интерфейс. Проверка хода 00:09:44
37 чел. ★ 5 Done
  Мы продолжаем реализацию необходимого функционала для
активации проверки ходов на основе ChessRules.dll.
Отчёт отправил: 30329. Алена Выполнено за 15 мин. [Показать отчёт]
Научился: На этом уроке сложностей не возникло. 
43 Интерфейс. VIP. Клетки отправления 00:09:17
37 чел. ★ 4.9 Done
  Это бонусный урок, выполнять его не обязательно.
На данном уроке мы реализуем подсветку тех клеток,
с которых можно ходить.
Отчёт отправил: 30329. Алена Выполнено за 40 мин. [Показать отчёт]
Научился: Подсвечивать клетки, с которых можно выполнить ход 
44 Интерфейс. VIP. Клетки прибытия 00:09:17
1 тест
37 чел. ★ 4.9 Done
  Это бонусный урок, выполнять его не обязательно.
На данном уроке мы реализуем подсветку тех клеток,
на которые можно ходить.
Отчёт отправил: 30329. Алена Выполнено за 11 мин. [Показать отчёт]
Научился: Подсвечивать точки, в которые можно поставить подянтую фигуру. 
45 Интерфейс. Щепотка рефакторинга 00:07:18
1 тест
37 чел. ★ 4.9 Done
  На этом уроке мы начинаем подготовку к
превращению пешки в одну из четырёх фигур.
Для начала проведём небольшой рефакторинг.
Отчёт отправил: 30329. Алена Выполнено за 17 мин. [Показать отчёт]
Научился: SetSprite, как мне показалось, красивее вынести в метод расширения: _figures[key].SetSprite(figure); 
46 Интерфейс. Выставка фигур 00:09:01
37 чел. ★ 4.9 Done
  На этом уроке мы продолжаем подготовку к
превращению пешки в одну из четырёх фигур.
Теперь нам надо подготовить фигуры, в которые будем превращать.
Отчёт отправил: 30329. Алена Выполнено за 33 мин. [Показать отчёт]
Научился: Поняла логику появления фигур для пешки. Мне показалось логичным добавить делегат на проверку выбора фигуры по аналогии с pickup object чтобы нельзя было схватить фигуру, которая не может ходить. 
47 Интерфейс. Долгожданное превращение 00:17:16
36 чел. ★ 5 Done
  На этом уроке мы наконец превратим
нашу пешку в одну из четырёх фигур.
Отчёт отправил: 30329. Алена Выполнено за 39 мин. [Показать отчёт]
Научился: Перваращать пешку с возможностью выбора фигуры превращения. Проверку отображения фигур при холостом перетаскивании пешки на последнюю линию поля реализовала перебором валидных шагов 
48 Интерфейс. ЧЕТВЁРТЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00
37 чел. ★ 4.9 Done
  Напишите отзыв о четвёртой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 30329. Алена Выполнено за 2 мин. [Показать отчёт]
Научился: Все супер, здорово было наблюдать использоване функционала библиотеки, которую писали в предыдущей части. Очень понравился пример использования делегатов! 
49 База данных. Management в студию! 00:02:39
35 чел. ★ 4.9 Done
  На этом уроке мы приступаем к созданию БД
для нашего сервера шахматы онлайн.

Отчёт отправил: 30329. Алена Выполнено за 4 мин. [Показать отчёт]
Научился: Пока что ничему, ssms была уже установлена 
50 База данных. Планирование 00:17:52
37 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы спроектируем схему нашей БД.
Отчёт отправил: 30329. Алена Выполнено за 35 мин. [Показать отчёт]
Научился: Узнала какие сущности будут жить в базе и почему именно они. 
51 База данных. Упрощение 00:08:09
36 чел. ★ 4.8 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы упростим схему нашей БД.
Отчёт отправил: 30329. Алена Выполнено за 8 мин. [Показать отчёт]
Научился: Убирать ненужные компоненты базы данных)) На самом деле логичный подход - сделать минимум, который работает и потом его уже дорабатывать, на замахиваться сразу на великие цели чтобы погибнуть на пути к ним. 
52 База данных. Созидание 00:06:52
35 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы наконец создадим
нашу базу данных для онлайн шахмат.
Отчёт отправил: 30329. Алена Выполнено за 10 мин. [Показать отчёт]
Научился: Работаю с ms sql поэтому данный урок не научил нивему новому.  
53 База данных. VIP. Таблицы на вырост 00:12:53
34 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы создадим дополнительные таблицы,
которые понадобятся для реализации полноценной онлайн игры.
Отчёт отправил: 30329. Алена Выполнено за 15 мин. [Показать отчёт]
Научился: Мне кажется, что Status в dbo.Games и Color в dbo.Sides - явно справочники, которые нужно так же делать отдельными таблицами по подключать через foreign key'и. 
54 База данных. VIP. Красивая диаграма 00:04:41
34 чел. ★ 4.9 Done
  На данном уроке мы нарисуем диаграмму нашей БД.
Отчёт отправил: 30329. Алена Выполнено за 10 мин. [Показать отчёт]
Научился: Рисовать диаграммы и двигать связи между таблицами 
55 База данных. ПЯТЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00
34 чел. ★ 4.8 Done
  Напишите отзыв о пятой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 30329. Алена Выполнено за 1 мин. [Показать отчёт]
Научился: Лично для меня это была самая легкая часть по причине того, что с ms sql ранее работала и представляю себе структуру бд и как таблицы взаимодействуют друг с другом. 
56 Сервер. Последняя версия 00:12:29
33 чел. ★ 5 Done
  На данном уроке мы приступаем к созданию
серверной части нашего онлайн проекта по шахматам.
Отчёт отправил: 30329. Алена Выполнено за 35 мин. [Показать отчёт]
Научился: Решила попробовать сделать то же самое на .net 5 а не framework, посмотрим что выйдет в итоге. 
57 Сервер. Райский Эдем - EDM 00:13:23
32 чел. ★ 5 Done
  На этом уроке мы создадим EDM - Entity Data Model.
Отчёт отправил: 30329. Алена Выполнено за 2 час. 4 мин. [Показать отчёт]
Научился: Супер, хотелось бы только более актуальную версию для net core 
Сложности: разобраться в DI AppDbContext в Sturtup.cs 
58 Сервер. Новая игра на JSON 00:11:40
32 чел. ★ 5 Done
  На этом уроке мы изменим формат вывода с XML на JSON.
Отчёт отправил: 30329. Алена Выполнено за 37 мин. [Показать отчёт]
Научился: Добавлять записи в бд через EF 
59 Сервер. Официант без логики 00:10:07
32 чел. ★ 5 Done
  На этом уроке мы будем упрощать наш ChessController.
Отчёт отправил: 30329. Алена Выполнено за 17 мин. [Показать отчёт]
Научился: Разделять обязанности контроллера и классов по обслуживанию взаимодействия с бд. 
60 Сервер. Ваш ход! 00:19:29
32 чел. ★ 5 Done
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы реализуем выполнение ходов.
Отчёт отправил: 30329. Алена Выполнено за 54 мин. [Показать отчёт]
Научился: Модифицировать записи в бд, прописывать маршруты. Как вариант чтобы видеть последний ход, можно возвращать не новую игру при совершении хода, а запоминать Id игры и после совершения хода возвращать именно эту запись с ее fen, при этом можно по статусу игры определять что игра завершилась и выводить какое-нибудь сообщение, типа "Игра завершена, победил игрок №N" 
61 Сервер. Шахматная Идемпотентность 00:09:34
32 чел. ★ 5 Done
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы обсудим Шахматную Идемпотентность.
Напишите своими словами, что такое Идемпотентность.
Отчёт отправил: 30329. Алена Выполнено за 1 час. 41 мин. [Показать отчёт]
Научился: Совершать ходы и проверять валидность запросов к базе через api 
62 Сервер. Китайская ничья 00:06:28
31 чел. ★ 5 Done
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы реализуем завершение игры при сдаче.
Отчёт отправил: 30329. Алена Выполнено за 26 мин. [Показать отчёт]
Научился: Сдаваться. 
63 Сервер. ШЕСТОЙ ФИНАЛЬНЫЙ УРОК 00:00:00
31 чел. ★ 4.8 Done
  Напишите отзыв о шестой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 30329. Алена Выполнено за 3 мин. [Показать отчёт]
Научился: В процессе выполнения этой части курса научилась основам работы с api, как можно подружить базу с api, как отправлять get запросы. 
Сложности: Пыталась реализовать тему уроков с применением актуальных технологий, net core. Небольшие отличия от показанного на видео заставили поднапрячь извилины и потренеровать навыки гуглежа. 
64 Хостинг. Регистрация аккаунта 00:05:13
31 чел. ★ 4.9 Done
  Приступаем к размещению нашего сервера в интернете.
Для этого нам потребуется Windows-хостинг с поддержкой ASP.NET

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

Ссылка для регистрации на хостинге: https://www.reg.ru/?rlink=reflink-30461

Отчёт отправил: 30329. Алена Выполнено за 8 мин. [Показать отчёт]
Научился: Подтверждать адрес электронной почты) 
65 Хостинг. Лучше заплатить 00:11:12
31 чел. ★ 4.8 Done
  На этом уроке мы выберем план, доменное имя, укажем контактную информацию.

Отчёт отправил: 30329. Алена Выполнено за 17 мин. [Показать отчёт]
Научился: Регистрировать и оплачивать хостинг. Процесс за это время слегка упростился. 
66 Хостинг. Доступ по FTP 00:10:08
31 чел. ★ 5 Done
  На этом уроке мы установим пароль для подключения к хостингу по FTP.

Напишите, какой FTP-клиент вы используете и приложите
скриншот вашей FTP программы с подключением к хостингу.
Отчёт отправил: 30329. Алена Выполнено за 36 мин. [Показать отчёт]
Научился: Была изначально только одна страница с кривым названием, пришлось вручную добавлять вторую с именем домена. Total commander не хотел подгружать список файлов по ftp пока не поставила галку SSL/TLS, просто висел downloading бесконечный 
67 Хостинг. Публикация проекта 00:12:13
31 чел. ★ 5 Done
  На этом уроке мы настроим публикацию проекта из Visual Studio.
Выполните все шаги и опубликуйте проект.

Приложите скриншот Visual Studio с логами публикации
и содержимое FTP каталога после публикации.
Отчёт отправил: 30329. Алена Выполнено за 12 мин. [Показать отчёт]
Научился: Что-то меня сильно смутила изначально версия 4.7.1, ведь я делала на .net 5, уже подумала, что не надо было выпендриваться не в своем дворе и делать все по курсу. Но! Получилось задеплоиться, в Sturtup по совету с одного видоса закомментила строку app.UseHttpsRedirection() и все норм (может и закомменчивать не нужно было, я не проверяла) 
68 Хостинг. Перенос базы данных 00:11:56
30 чел. ★ 5 Done
  На этом уроке мы перенесём базу данных на сервер и подключимся к ней из скрипта.

Отчёт отправил: 30329. Алена Выполнено за 28 мин. [Показать отчёт]
Научился: Разворачивать бекап на хостинге, задавать строку подключения. У меня строка подключения в appsettings.json в Startup.cs биндинтся с конфигурацией - чисто по инструкции не заработало. Пришлось в проекте для релиз настроек менять строку подключения, а в appsettings.Development.json оставить строку для локального подключения чтобы можно было через iis express локально что-то тестировать. Заново задеплоила проект и все заработало (появился коннект к базе) 
69 Хостинг. VIP. Двойные стандарты 00:07:32
30 чел. ★ 5 Done
  На этом уроке мы обсудим нюансы с публикацией
очередной версии серверной части на хостинге.
Отчёт отправил: 30329. Алена Выполнено за 9 мин. [Показать отчёт]
Научился: Оказывается, те же действия мне пришлось выполнить на предыдущем уроке чтобы заработало подключение к базе. 
70 Хостинг. СЕДЬМОЙ ФИНАЛЬНЫЙ УРОК 00:00:00
30 чел. ★ 5 Done
  В этой части мы разместили сервер не хостинге.
Шахматная серверная программа нашла пристанище в интернете.
Наконец-таки можно будет переходить к игре по сети.

Напишите в отчёте, всё ли получилось
и по какому адресу можно найти ваш серверный API.
Отчёт отправил: 30329. Алена Выполнено за 1 мин. [Показать отчёт]
Научился: Отличная часть курса. Никогда не работала с хостингами, получила полезный опыт. http://chess-videosharp.xyz/chess 
71 Клиент. Достучаться до облака 00:05:06
29 чел. ★ 5 Done
  На этом уроке мы приступаем к завершающему этапу
по созданию клиент-серверной игры "Онлайн шахматы".
Отчёт отправил: 30329. Алена Выполнено за 26 мин. [Показать отчёт]
Научился: Получить fen по запросу к api, размещенному на хостинге. 
72 Клиент. Дедовские методы 00:05:19
29 чел. ★ 5 Done
  На этом уроке мы выделим FEN из полученной json строки.
Отчёт отправил: 30329. Алена Выполнено за 5 мин. [Показать отчёт]
Научился: Функционал этого урока реализовала как доп. задание к прошлому. 
73 Клиент. Ход в мешке 00:15:23
29 чел. ★ 5 Done
  На этом уроке мы научимся отправлять на сервер наш ход.
Отчёт отправил: 30329. Алена Выполнено за 25 мин. [Показать отчёт]
Научился: Делать запросы к api с передачей хода. 
74 Клиент. Серверные пешки 00:05:25
29 чел. ★ 5 Done
  На этом уроке мы используем ранее созданный класс Client()
в наш проект на Unity, чтобы можно было поиграть с GUI.
Отчёт отправил: 30329. Алена Выполнено за 31 мин. [Показать отчёт]
Научился: System.Text.Json доставил мне немножко головной боли, пришлось копипастить несколько dll в Assets чтобы подхватились using'и 
Сложности: Разобраться почему unity не видит dll'ки 
75 Клиент. Следы невиданных ходов 00:07:25
29 чел. ★ 5 Done
  На этом уроке мы реализуем отправку хода через GUI.
Отчёт отправил: 30329. Алена Выполнено за 9 мин. [Показать отчёт]
Научился: Супер, оно работает. 
76 Клиент. Фоновое обновление 00:11:50
29 чел. ★ 5 Done
  На этом уроке мы реализуем функцию
обновления текущего состояния на доске.
Отчёт отправил: 30329. Алена Выполнено за 12 мин. [Показать отчёт]
Научился: Обновлять состояние игры в ожидании хода противника. 
77 FREE Клиент. ВОСЬМОЙ ФИНАЛЬНЫЙ УРОК 00:03:01
27 чел. ★ 5 Done
  Поздравляю вас с завершением нашего эпического курса
по созданию клиент-серверной игры в шахматы по сети!

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

Расскажите на видео о своём подвиге.
Чем курс понравился, что было сложно,
что было интересно, что можно будет добавить.
Отчёт отправил: 30329. Алена Выполнено за 5 мин. [Показать отчёт]
Научился: Курс просто супер. Для новичков самое то, когда можно в легкой форме познакомиться с процессом создания приложения и пощупать различные технологии. Здорово! 
78 Рефакторинг. С чего начать? 00:05:39
24 чел. ★ 5 Done
  На этом уроке мы начинаем рефакторинг
кода клиентской части на Unity.
Отчёт отправил: 30329. Алена Выполнено за 12 мин. [Показать отчёт]
Научился: Выносить часть кода для облегчения понимания и поддержки кода. 
79 Рефакторинг. Координатные трансформации 00:14:04
24 чел. ★ 5 Done
  На этом уроке мы продолжаем рефакторинг
и сейчас мы выделим статические элементы.

Отчёт отправил: 30329. Алена Выполнено за 23 мин. [Показать отчёт]
Научился: Мне больше визуально нравятся методы расширения. Показалось, что ShowSquare в классе Board можно переписать с использованием Vector2 чтобы не передавать постоянно x и y, а для строки добавить метод расширения, который создает из нее Vector2. 
80 Рефакторинг. Чёрный ящик 00:07:38
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы займёмся словарями.
Отчёт отправил: 30329. Алена Выполнено за 19 мин. [Показать отчёт]
Научился: Выделять общие методы чтобы обобщать их обработку в классе. Остальные словари тоже заменила, чувствую, следующий урок будет бесполезен) 
81 Рефакторинг. Интерфейсная прослойка 00:10:35
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим интерфейс ICreatable.
Отчёт отправил: 30329. Алена Выполнено за 20 мин. [Показать отчёт]
Научился: Создавать интерфейсы и реализовывать их. 
82 Рефакторинг. Ящик с фигурами 00:04:16
1 тест
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы сделаем класс Box() абстрактным.
Отчёт отправил: 30329. Алена Выполнено за 9 мин. [Показать отчёт]
Научился: Наследоваться от абстрактных классов, использовать базовый конструктор. 
83 Рефакторинг. Многоклеточная сущность 00:06:48
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс BoxSquares().
Отчёт отправил: 30329. Алена Выполнено за 22 мин. [Показать отчёт]
Научился: Немножечко рефакторить. 
84 Рефакторинг. Вынос переноса 00:02:34
24 чел. ★ 4.9 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс Box().SetPosition().
Отчёт отправил: 30329. Алена Выполнено за 8 мин. [Показать отчёт]
Научился: Трудно чему-то научиться за 2 минуты. Уроки длиной 10-15 минут, как мне кажется, интереснее. А тут за день ничего не сделала, выходит. 
85 Рефакторинг. Спрайт, не дай себя заинтерфейсить 00:07:18
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс Box().SetSpriteAt().
Отчёт отправил: 30329. Алена Выполнено за 13 мин. [Показать отчёт]
Научился: Пока что выглядит так, что можно было бы обойтись без интерфейса и creator'а в конструкторе - Instantiate статичный метод класса GameObject 
86 Рефакторинг. Клетка в клетке 00:04:46
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы перенесём и разделим класс ShowSquare().
Отчёт отправил: 30329. Алена Выполнено за 1 час. 10 мин. [Показать отчёт]
Научился: Как и во всей главе рефакторинга - попрактиковалась в поиске и выносе в отдельные класса логически зависимые методы. 
87 Рефакторинг. Шахматная независимость 00:07:23
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы перенесём некоторые функции в класс BoxSquares().
Отчёт отправил: 30329. Алена Выполнено за 9 мин. [Показать отчёт]
Научился: Практикуюсь в рефакторинге дальше. 
88 Рефакторинг. Хоровод из четырёх фигур 00:14:37
24 чел. ★ 4.9 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы порефакторим функционал превращения пешки.
Отчёт отправил: 30329. Алена Выполнено за 38 мин. [Показать отчёт]
Научился: Еще немножко рефакторить. 
89 Рефакторинг. Волшебник изумрудного ящика 00:18:39
24 чел. ★ 4.9 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс BoxPromots().
Отчёт отправил: 30329. Алена Выполнено за 18 мин. [Показать отчёт]
Научился: Попрактиковалась в рефакторинге кода.  
90 Рефакторинг. Потерянная пешка 00:36:59
24 чел. ★ 4.9 Done
  На этом уроке мы вернёмся к нашей библиотеке
для исправления старой ошибки: пешка может
превратиться в чужую фигуру ил остаться пешкой.

Отчёт отправил: 30329. Алена Выполнено за 37 мин. [Показать отчёт]
Научился: Немного дебажить и рассуждать где может быть ошибка. 
91 Рефакторинг. Класс шахматной игры 00:13:15
23 чел. ★ 4.8 Done
  ЭТОТ УРОК НУЖНО ПЕРЕЗАПИСАТЬ. ДЛЯ ЭТОГО МНЕ НУЖЕН ПРОЕКТ ДО ЕГО ВЫПОЛНЕНИЯ.
ПОЖАЛУЙСТА ПЕРЕД ВЫПОЛНЕНИЕМ ЭТОГО УРОКА СОЗДАЙТЕ АРХИВ ПРОЕКТА И ПРИШЛИТЕ ЕГО МНЕ.

Мы на финишной прямой нашего рефакторинга.
На данном уроке мы вынесем логику игры в отдельный класс Game().

Отчёт отправил: 30329. Алена Выполнено за 21 мин. [Показать отчёт]
Научился: Выделять отдельный класс для упрощения читаемости кода. 
92 Рефакторинг. Двухэтажное превращение 00:16:50
22 чел. ★ 5 Done
  Мы всё ближе и ближе к финишу нашего рефакторинга.
На данном уроке мы вынесем оставшуюся логику игры в класс Game().

Отчёт отправил: 30329. Алена Выполнено за 21 мин. [Показать отчёт]
Научился: Научилась рефакторить, урок супер. 
93 Рефакторинг. Финальное причёсывание 00:06:58
22 чел. ★ 5 Done
  Мы поздравляем тебя с завершением рефакторинга.
На данном уроке мы причешем наши скрипты.
Отчёт отправил: 30329. Алена Выполнено за 6 мин. [Показать отчёт]
Научился: Рефакторить. Почти добралась до кнопок в юнити 
94 Рефакторинг. Последний аккорд 00:14:10
23 чел. ★ 4.9 Done
  На этом уроке мы заканчиваем наш эпический курс.
Получилось здорово.
Я доволен результатом.
Надеюсь, вы тоже.
Мы проделали огромную работу.
Каждый стал чуточку умнее и опытнее.
Отчёт отправил: 30329. Алена Выполнено за 20 мин. [Показать отчёт]
Научился: Отличный курс, огромное спасибо! 
95 VIP. Меню DimanDOSа 00:27:50
20 чел. ★ 5 Done
  1. Создание и размещение кнопки вызова меню и панели с кнопками.
2. Программирование действий по нажатиям кнопок -
создание функций и привязка их к событиям нажатия.

Отчёт отправил: 30329. Алена Выполнено за 51 мин. [Показать отчёт]
Научился: Создавать кнопки и панель меню. 
  Итого:   95 видеоуроков 17 час. 04 мин.
18 тестов
19 чел. ★ 4.96  
  Финалисты:   Дмитрий,   Yefim,   Tekashnik,   Иван Воронин,   ser2018,   Алексей,   Дмитрий Б,   alklokov,   FireWolf,   Andrew,   Max,   Новопашин Владимир,   Красимир Зорбов,   Антон,   Евгений,   Anatoli,   Freud,   Алена,   MaxB .

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





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

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

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

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


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



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