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

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

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

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

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

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

Записаться на курс
Отчёт отправил: 17334. Дмитрий Б Выполнено за 17 мин. [Показать отчёт]
Научился:       Я онакомился с общей схемой разработки данного приложения  
Сложности: Мало знаком с платформой Unity 3D  
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

Отчёт отправил: 17334. Дмитрий Б Выполнено за 17 дней 2 час. 30 мин. [Показать отчёт]
Научился: 1. Установил Unity стал смотеть видео по работе с Unity. 2. При печатании шахматных терминов сделал 14 ошибок.  Это не мало,     но довел дело др конца.  
Сложности:   самое сложное напечаттать текст без ошибок 
3 Доска. Фигуры 00:13:05
62 чел. ★ 5 Done
  На этом уроке мы разместим доску с фигурами.

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

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

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

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

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

Отчёт отправил: 17334. Дмитрий Б Выполнено за 18 час. 49 мин. [Показать отчёт]
Научился:   Научился загружать на local host при помощи Javascript и WebGl    
Сложности: Сама среда Unity пару раз слетала по не известным причинам 
11 FREE Классы. Архитектура проекта 00:19:24
1 тест
64 чел. ★ 5 Done
  На этом уроке мы познакомимся с архитектурой проекта,
посмотрим на предстоящее путешествие с высоты птичьего полёта.
Задание: написать, что для вас в этом плане самое простое, а что - самое сложное.

Отчёт отправил: 17334. Дмитрий Б Выполнено за 14 дней 17 час. 53 мин. [Показать отчёт]
Научился:   1. Самое  дегкое это рисовать шахматные фигурки   2. Самое сложное  это EF  Unity 
12 Классы. Шахматная библиотека 00:15:22
2 теста
53 чел. ★ 4.9 Done
  На данном уроке мы начинаем создание шахматных классов на языке C#, которые позволят проверять правила игры.
Для этого мы напишем библиотеку, которая сможет для любой шахматной позиции определить возможность любого хода.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 день 5 час. 34 мин. [Показать отчёт]
Научился:     Научились создавать структуру приложения,     взаимосвязь между классами,     архитектура обшего представрения данного проекта.     Нам нужны еще классы Class timer ( показывает время игры, общее время)     class Winner (описывает логику победы)     class Loose  (показывает логику проигрыша)       class            ( показывает  логику ничьи)       Можно также реализовать один класс в котором описать логику проигрыша, победы, ничьи  
Сложности:   Сложно понять как реализовать механизм: "Запись позиций с помощью нотации Форсайта—Эдвардса (FEN)" Начальная позиция шахматной партии: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1  
13 Классы. Цветная фигура 00:10:21
53 чел. ★ 4.9 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы рассмотри схему библиотеки dll,
которая поможет нам сориентироваться в дальнейших действиях.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 час. 28 мин. [Показать отчёт]
Научился: Разобрался с взаимодействием  enum  с общим механизмом игры. 
Сложности: В конце на Brakepoints 
14 Классы. Квадратная площадь 00:14:59
52 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим структуру классов
с минимально необходимым кодом.

Отчёт отправил: 17334. Дмитрий Б Выполнено за 6 дней 19 час. 56 мин. [Показать отчёт]
Научился: Разобрался в структуре Square  
Сложности:   Становиться сложнее когда добовляються дополнителье классы. 
15 Классы. Фигурой марш! 00:11:52
51 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим классы для
хранения и перемещения фигур по клеткам.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 4 дня 19 час. 26 мин. [Показать отчёт]
Научился: Создал 2 конструктора, и 2 класса FigureMoving , и FigureOnSquare 
Сложности: Сложностей с данной частю не возникло. 
16 Классы. Квадратная матрица 00:09:56
51 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим класс Board(),
который будет заниматься доской и работать с FEN.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 31 мин. [Показать отчёт]
Научился: Добавил в класс Library class Board, разобрался с его ф-циями-членами. 
Сложности: Не было сложностей. 
17 Классы. Стой, кто идёт! 00:10:04
51 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы создадим класс Moves(),
который будет заниматься проверкой возможности хода.

Отчёт отправил: 17334. Дмитрий Б Выполнено за 3 час. 18 мин. [Показать отчёт]
Научился: Усвоил общее представление о взаимодействии классов , и их методов 
Сложности: найти ошибку в класе Moves 
18 Классы. Шахматная бюрократия 00:07:58
50 чел. ★ 5 Done
  Мы продолжаем создание шахматных классов на языке C#,
которые позволят проверять правила игры.
На этом уроке мы допишем класс Chess().
Отчёт отправил: 17334. Дмитрий Б Выполнено за 20 мин. [Показать отчёт]
Научился: Добавил дополнительный конструктор, и модифицыровал некоторые методы 
Сложности: нап данном этапе не было 
19 Классы. Консольная доска 00:14:05
1 тест
49 чел. ★ 5 Done
  Мы приступаем к написанию тестов для нашей библиотеки.
На этом уроке мы создадим функционал для отображения доски
и исправим старую ошибку копипаста.

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

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

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

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

Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 час. 17 мин. [Показать отчёт]
Научился: Cоздал ф-цию GenerateFEN(), доpaботaл ф-цию Move(FigureMovoing fm) в клаcce Board() 
Сложности: не возникло сложностей 
23 Алгоритмы. Генератор ходов 00:19:11
1 тест
43 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы начинаем реализацию проверок
можно ли пойти с одной клетки на другую.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 45 мин. [Показать отчёт]
Научился: Cоздал доп. функционал макета с алгоритмами, а именно : - Chess().YieldValidMoves() - Square().YieldBoardSquares() - Board().YieldMyFigureOnSquares() 
Сложности: все было понятно 
24 Алгоритмы. Куда идёт Король 00:10:43
1 тест
42 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем проверку
может ли King пойти с одной клетки на другую.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 30 мин. [Показать отчёт]
Научился: В клаccе Moves() дopабoтaл фyнкцию CanMoves() 
Сложности: проверка с конем 
25 Алгоритмы. Ночью с Конём 00:05:05
1 тест
42 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем проверку
может ли Knight пойти с одной клетки на другую.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 12 мин. [Показать отчёт]
Научился: Реализовал проверку ходов коня 
Сложности: не было затруднений на данном этапе 
26 Алгоритмы. Дальнобойщики 00:17:19
1 тест
42 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы переходим к дальнобойным фигурам.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 24 мин. [Показать отчёт]
Научился: Все получилось, прoтeстиpoвал paбoту текущегo функционала 
Сложности: не было затруднений 
27 Алгоритмы. Храбрая пешка 00:19:03
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы приступаем к реализации
алгоритмов самой сложной фигуры: Pawn.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 7 час. 24 мин. [Показать отчёт]
Научился: Реaлизoвал фyнкции: - Moves().CanPawnMove(), - Moves().CanPawnGo, - Moves().CanPawnJump, - Moves().CanPawnEat() 
Сложности: не возникло трудностей на этом этапе 
28 Алгоритмы. Четвёртое превращение 00:12:27
1 тест
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем превращение Pawn
в одну из четырёх фигур: Queen, Knight, Bishop и Rook.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 42 мин. [Показать отчёт]
Научился: Все получилось , прoтeстиpoвал paбoту текущегo функционала 
Сложности: не было 
29 Алгоритмы. Рефакторинг на доске 00:17:03
1 тест
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы займёмся рефакторингом.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 36 мин. [Показать отчёт]
Научился: Сделал перенос всех необходимых ф-ций в отдельный класс NextBoard 
Сложности: не было 
30 Алгоритмы. Допрыгалась! 00:21:20
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы займёмся взятием пешкой на проходе.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 час. 23 мин. [Показать отчёт]
Научился: все работает , протестировал, и дописал все необходимые ф-ции 
Сложности: не было 
31 Алгоритмы. Королевский паркур 00:25:05
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы реализуем рокировку.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 58 мин. [Показать отчёт]
Научился: Реализовал весь необходимый ф-ционал Все протестировал. 
Сложности: не было 
32 Алгоритмы. Защита короля 00:20:26
41 чел. ★ 5 Done
  Мы продолжаем написание шахматных алгоритмов.
На этом уроке мы будем защищать короля от ШАХа.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 день 2 час. 26 мин. [Показать отчёт]
Научился: Протестировал, все работает 
Сложности: не было 
33 Алгоритмы. Шах и Мат! 00:09:55
41 чел. ★ 5 Done
  Мы заканчиваем написание шахматных алгоритмов.
На этом уроке мы реализуем возврат ситуации на доске.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 45 мин. [Показать отчёт]
Научился: Реaлизoвад вcпoмогaтeльнyю функцию Chess().SetCheckFlags(), и протестировал все  
Сложности: не было 
34 Алгоритмы. ТРЕТИЙ ФИНАЛЬНЫЙ УРОК 00:03:57
41 чел. ★ 5 Done
  На этом уроке мы исправим одну ошибку и добавим ещё один вариант метода GetFigureAt(string xy).
Ваше задание - записать подробный отзыв об алгоритмической части проекта.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 24 мин. [Показать отчёт]
Научился: Все ф-ции дописал, протестировал. Да, и в правду, это была не легкая часть т.к. ее пришлось сделать всего за 2 дня. Весь инструментарий(функциональность) оптимизирован, и грамотно сформулирован. Что до ошибок, то я не мог никак разобраться в чем проблема из-за логичной НЕТ в одном из условий., но это пустяк. 
Сложности: данная часть, не была трудной 
35 Алгоритмы. VIP. Шахматное супертестирование 00:11:34
41 чел. ★ 5 Done
  На этом уроке мы проверим корректность ваших алгоритмов.
Для этого мы прогоним супер-тест по генерации всех вариантов.

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

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

Отчёт отправил: 17334. Дмитрий Б Выполнено за 23 мин. [Показать отчёт]
Научился: ф-цию дописал протестировал. На 1й проверке -  20, на 2й - 400, на 3й - 8902 а на 4 проверке выдает результат  
Сложности: неверный рез на 4й проверке 
36 Алгоритмы. VIP. Можно пройти? 00:02:13
41 чел. ★ 5 Done
  На этом уроке мы немного порефакторим и
добавим очень полезную функцию.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 8 мин. [Показать отчёт]
Научился: All right. Done! 
Сложности: wasn't 
37 Алгоритмы. VIP. Как пройти в библиотеку 00:10:35
40 чел. ★ 5 Done
  На этом уроке мы подготовим библиотеку ChessRules.
Для этого мы скомпилируем её в необходимой версии .NET
и проверим работоспособность в Unity проекте.

Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 день 8 час. 39 мин. [Показать отчёт]
Научился: Все было понятно 
Сложности: Когда сменил в настр. проджекта версию фреймворка на 3.5 то некоторые зависимости послитали, по неизвестной причине, и проект не компилировался(в первом скришоте видно) При откате назад(смене на версию 4.7) все работало.. Так не разбирал в чем проблема была 
38 Интерфейс. План действий 00:10:23
40 чел. ★ 5 Done
  На этом уроке мы обсудим дальнейший план действий.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 28 мин. [Показать отчёт]
Научился: Все удалил, и по новому добавил 4 фона, и все фигуры за кадр 
Сложности: не было 
39 Интерфейс. Генерация объектов 00:16:45
40 чел. ★ 5 Done
  На этом уроке мы сгенерируем шахматную доску
с базовыми объектами на ней.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 час. 6 мин. [Показать отчёт]
Научился: Все получилось, протестировал 
Сложности: затруднений не было  
40 Интерфейс. Начальная позиция 00:11:23
39 чел. ★ 5 Done
  На этом уроке мы добавим ранее созданную
библиотеку ChessRules.dll в проект на Unity.

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

Отчёт отправил: 17334. Дмитрий Б Выполнено за 23 час. 34 мин. [Показать отчёт]
Научился: Добавил в клас делегат и ф-цию с одинаковой сигнатурой, все работает, но результат что то не тот что у вас..Смещена та же фигура, но позиция показывает (8.0, 2.0) (8.0, 6.1) Наверное где то в цикле ошибку допустил 
Сложности: не было 
42 Интерфейс. Проверка хода 00:09:44
37 чел. ★ 5 Done
  Мы продолжаем реализацию необходимого функционала для
активации проверки ходов на основе ChessRules.dll.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 10 дней 13 час. 33 мин. [Показать отчёт]
Научился: Реaлизoвал вcпoмогaтeльнyю функцию Board().VectorToSquare(), и Board().DropObject(). Прoтeстиpoвать paбoту скрипта. 
Сложности: Сложностей не возникло, за исключением того, что конь почему то возвращается назад, при чем и черных и белых., с этим разберусь, скорее всего где то в скипте что то .. 
43 Интерфейс. VIP. Клетки отправления 00:09:17
37 чел. ★ 4.9 Done
  Это бонусный урок, выполнять его не обязательно.
На данном уроке мы реализуем подсветку тех клеток,
с которых можно ходить.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 29 мин. [Показать отчёт]
Научился: Реaлизoвал вcпoмогaтeльнyю функцию Board().ShowSquare(), Board().MarkSquaresFrom(), DropObject() и Start(), и Board().UnmarkSquares()  
Сложности: сложностей не возникло на данном этапе 
44 Интерфейс. VIP. Клетки прибытия 00:09:17
1 тест
37 чел. ★ 4.9 Done
  Это бонусный урок, выполнять его не обязательно.
На данном уроке мы реализуем подсветку тех клеток,
на которые можно ходить.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 17 мин. [Показать отчёт]
Научился: Реaлизoвал все вcпoмогaтeльные функции Board().PickObject()  Board().MarkSquaresTo()  DragAndDropю().PickUp() 
Сложности: не возникло сложности 
45 Интерфейс. Щепотка рефакторинга 00:07:18
1 тест
37 чел. ★ 4.9 Done
  На этом уроке мы начинаем подготовку к
превращению пешки в одну из четырёх фигур.
Для начала проведём небольшой рефакторинг.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 14 час. 26 мин. [Показать отчёт]
Научился: Реализовал вспомогательные функции Board().CreateGameObject(), и Board().SetSprite() Доработал вспомогательную функцию Board().ShowSquare() 
Сложности: на данном этапе трудностей не возникло 
46 Интерфейс. Выставка фигур 00:09:01
37 чел. ★ 4.9 Done
  На этом уроке мы продолжаем подготовку к
превращению пешки в одну из четырёх фигур.
Теперь нам надо подготовить фигуры, в которые будем превращать.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 28 мин. [Показать отчёт]
Научился: Доработал вспомогательную функцию Board().InitGameObjects() Реализовал вспомогательную функцию Board().ShowPromotionFigures() 
Сложности: небыло 
47 Интерфейс. Долгожданное превращение 00:17:16
36 чел. ★ 5 Done
  На этом уроке мы наконец превратим
нашу пешку в одну из четырёх фигур.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 22 час. 10 мин. [Показать отчёт]
Научился: Доработал вспомогательную функцию Board().DropObject() и Board().PickObject() Протестировал , все работает. 
Сложности: не было 
48 Интерфейс. ЧЕТВЁРТЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00
37 чел. ★ 4.9 Done
  Напишите отзыв о четвёртой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 3 мин. [Показать отчёт]
Научился: В основном трудностей не возникло, не исключая тот факт, что много времени ушло на поиски ошибки в алгоритмах., но все исправил. Двигаемся дальше в том же духе. 
Сложности: выше описанное 
49 База данных. Management в студию! 00:02:39
35 чел. ★ 4.9 Done
  На этом уроке мы приступаем к созданию БД
для нашего сервера шахматы онлайн.

Отчёт отправил: 17334. Дмитрий Б Выполнено за 19 мин. [Показать отчёт]
Научился: All right 
Сложности: не было 
50 База данных. Планирование 00:17:52
37 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы спроектируем схему нашей БД.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 15 дней 13 час. 58 мин. [Показать отчёт]
Научился: схему БД нарисовал 
Сложности: не было 
51 База данных. Упрощение 00:08:09
36 чел. ★ 4.8 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы упростим схему нашей БД.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 15 дней 13 час. 39 мин. [Показать отчёт]
Научился: все было понятным 
Сложности: не было 
52 База данных. Созидание 00:06:52
35 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы наконец создадим
нашу базу данных для онлайн шахмат.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 12 час. 5 мин. [Показать отчёт]
Научился: Базу и таблицу создал 
Сложности: не было 
53 База данных. VIP. Таблицы на вырост 00:12:53
34 чел. ★ 4.9 Done
  Мы продолжаем создание БД для
нашего сервера шахматы онлайн.
На данном уроке мы создадим дополнительные таблицы,
которые понадобятся для реализации полноценной онлайн игры.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 30 мин. [Показать отчёт]
Научился: Создал дополнительные таблицы, добавил необходимые ключи и индексы 
Сложности: не было 
54 База данных. VIP. Красивая диаграма 00:04:41
34 чел. ★ 4.9 Done
  На данном уроке мы нарисуем диаграмму нашей БД.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 12 мин. [Показать отчёт]
Научился: Диаграмма готова 
Сложности: не было 
55 База данных. ПЯТЫЙ ФИНАЛЬНЫЙ УРОК 00:00:00
34 чел. ★ 4.8 Done
  Напишите отзыв о пятой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 2 мин. [Показать отчёт]
Научился: Базы спроектированные , все готово к следующей разработки 
Сложности: С этой частью проблем не возникло 
56 Сервер. Последняя версия 00:12:29
33 чел. ★ 5 Done
  На данном уроке мы приступаем к созданию
серверной части нашего онлайн проекта по шахматам.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 25 мин. [Показать отчёт]
Научился: Все создал, опыт с API есть, все работает 
Сложности: все было понятным 
57 Сервер. Райский Эдем - EDM 00:13:23
32 чел. ★ 5 Done
  На этом уроке мы создадим EDM - Entity Data Model.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 32 мин. [Показать отчёт]
Научился: Все проделал, работает без ошибок 
Сложности: не было 
58 Сервер. Новая игра на JSON 00:11:40
32 чел. ★ 5 Done
  На этом уроке мы изменим формат вывода с XML на JSON.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 33 мин. [Показать отчёт]
Научился: Все проделано, протестировано, работает! 
Сложности: не было 
59 Сервер. Официант без логики 00:10:07
32 чел. ★ 5 Done
  На этом уроке мы будем упрощать наш ChessController.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 6 час. 40 мин. [Показать отчёт]
Научился: Все проделал, протестировал, ошибок нету, все работает. Модифицировал контроллер ChessController 
Сложности: не было 
60 Сервер. Ваш ход! 00:19:29
32 чел. ★ 5 Done
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы реализуем выполнение ходов.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 15 час. 30 мин. [Показать отчёт]
Научился: Все получилось, протестировал, работает 
Сложности: в данной части трудность была при отладке: ResultsView:   -> expanding the results view will enumerate the ienumerable immediate window 
61 Сервер. Шахматная Идемпотентность 00:09:34
32 чел. ★ 5 Done
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы обсудим Шахматную Идемпотентность.
Напишите своими словами, что такое Идемпотентность.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 2 час. 34 мин. [Показать отчёт]
Научился: Реализовал функции: ChessController().GetGameById() Logic().GetGame(). Модифицировал ф-цию Logic().MakeMove() Протестировал все работает 
Сложности: не было 
62 Сервер. Китайская ничья 00:06:28
31 чел. ★ 5 Done
  Мы продолжаем создание серверной части для
нашего проекта Шахматы по сети.
На этом уроке мы реализуем завершение игры при сдаче.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 14 мин. [Показать отчёт]
Научился: Модифицировал ф-цию ChessController().GetMoves(), Реализовал ф-цию Logic().ResignGame() Все протестировал, работает 
Сложности: не было  
63 Сервер. ШЕСТОЙ ФИНАЛЬНЫЙ УРОК 00:00:00
31 чел. ★ 4.8 Done
  Напишите отзыв о шестой части курса:
что получилось, что было сложным,
что ещё вы добавите в программу.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 9 мин. [Показать отчёт]
Научился: Серверная часть прошла быстро, все оптимизировано Добавил бы статистику, и время 
Сложности: Трудность возникла при отладке, не отображалось Result пришлось в ф-ции GetCurrentGame привести к листу var currentGames public Game GetCurrentGame()         {             Game game;             var currentGames = db.Games.Where(g => g.Status == "play").ToList(); 
64 Хостинг. Регистрация аккаунта 00:05:13
31 чел. ★ 4.9 Done
  Приступаем к размещению нашего сервера в интернете.
Для этого нам потребуется Windows-хостинг с поддержкой ASP.NET

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

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

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

Отчёт отправил: 17334. Дмитрий Б Выполнено за 9 дней 1 час. 7 мин. [Показать отчёт]
Научился: Подискал тестовый хостинг, на котором попробую разместить сайт 
Сложности: не было 
66 Хостинг. Доступ по FTP 00:10:08
31 чел. ★ 5 Done
  На этом уроке мы установим пароль для подключения к хостингу по FTP.

Напишите, какой FTP-клиент вы используете и приложите
скриншот вашей FTP программы с подключением к хостингу.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 2 час. 42 мин. [Показать отчёт]
Научился: Развернул игру на somee.com хостинге, пользовался filezilla 
Сложности: не было 
67 Хостинг. Публикация проекта 00:12:13
31 чел. ★ 5 Done
  На этом уроке мы настроим публикацию проекта из Visual Studio.
Выполните все шаги и опубликуйте проект.

Приложите скриншот Visual Studio с логами публикации
и содержимое FTP каталога после публикации.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 25 мин. [Показать отчёт]
Научился: Все прошло успешно, БД перенес 
Сложности: не было 
68 Хостинг. Перенос базы данных 00:11:56
30 чел. ★ 5 Done
  На этом уроке мы перенесём базу данных на сервер и подключимся к ней из скрипта.

Отчёт отправил: 17334. Дмитрий Б Выполнено за 6 час. 1 мин. [Показать отчёт]
Научился: БД перенес успешно, но другим путем, тюк использую другой хостинг., web.config (connection string) изменил на текущую с хостинга. Протестировал, все работает. 
Сложности: не было, на данном этапе 
69 Хостинг. VIP. Двойные стандарты 00:07:32
30 чел. ★ 5 Done
  На этом уроке мы обсудим нюансы с публикацией
очередной версии серверной части на хостинге.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 3 час. 33 мин. [Показать отчёт]
Научился: Скопировал настроенный файл Web.config с хостинга к себе в отдельную папку, модифицировал Web.Release.config. Протестировал, все работает. 
Сложности: не было 
70 Хостинг. СЕДЬМОЙ ФИНАЛЬНЫЙ УРОК 00:00:00
30 чел. ★ 5 Done
  В этой части мы разместили сервер не хостинге.
Шахматная серверная программа нашла пристанище в интернете.
Наконец-таки можно будет переходить к игре по сети.

Напишите в отчёте, всё ли получилось
и по какому адресу можно найти ваш серверный API.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 2 мин. [Показать отчёт]
Научился: Все получилось, работает. URL Server API Chess:      http://www.chess-online.somee.com/api/Version 
Сложности: не было 
71 Клиент. Достучаться до облака 00:05:06
29 чел. ★ 5 Done
  На этом уроке мы приступаем к завершающему этапу
по созданию клиент-серверной игры "Онлайн шахматы".
Отчёт отправил: 17334. Дмитрий Б Выполнено за 2 час. 14 мин. [Показать отчёт]
Научился: Создал класс ChessDemo.Client, реализовал ф-цию Client().GetFenFromServer() Все работает.,  
Сложности: не было 
72 Клиент. Дедовские методы 00:05:19
29 чел. ★ 5 Done
  На этом уроке мы выделим FEN из полученной json строки.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 11 час. 8 мин. [Показать отчёт]
Научился: Реализовал вспомогательную ф-цию Client().GetFenFromJSON() Все протестировал, работает 
Сложности: сначала в классе логики не показовалось IsCheck(), потом нашел, ошибка была в том, что в класе Chess ф-ция SetCheckFlags() была вызвана только в одном конструкторе, который принимает параметр Board board 
73 Клиент. Ход в мешке 00:15:23
29 чел. ★ 5 Done
  На этом уроке мы научимся отправлять на сервер наш ход.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 5 час. 47 мин. [Показать отчёт]
Научился: Добавил геттер/сеттер Client().GameID, реализовал функции Client().GetIdFromJSON(), и Client().SendMove(), ипользовал ф-цию SendMove() в цикле деморежима Протестировал , все работает 
Сложности: не было 
74 Клиент. Серверные пешки 00:05:25
29 чел. ★ 5 Done
  На этом уроке мы используем ранее созданный класс Client()
в наш проект на Unity, чтобы можно было поиграть с GUI.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 31 мин. [Показать отчёт]
Научился: Импортировал класс Client() в проект на Unity, использовал класс Clint() в Board(), протестировал загрузку партии с сервера 
Сложности: не было 
75 Клиент. Следы невиданных ходов 00:07:25
29 чел. ★ 5 Done
  На этом уроке мы реализуем отправку хода через GUI.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 28 мин. [Показать отчёт]
Научился: Реализовал вспомогательную функцию Board().MakeMove(), протестировал обмен данными между сервером и клиентом 
Сложности: не было 
76 Клиент. Фоновое обновление 00:11:50
29 чел. ★ 5 Done
  На этом уроке мы реализуем функцию
обновления текущего состояния на доске.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 30 мин. [Показать отчёт]
Научился: Модифицировал функцию Board().Start(), реализовал вспомогательную функцию Board().Refresh(), установил галку Run in Background Протестировал обновление текущего состояния доски, все работает 
Сложности: не было 
77 FREE Клиент. ВОСЬМОЙ ФИНАЛЬНЫЙ УРОК 00:03:01
27 чел. ★ 5 Done
  Поздравляю вас с завершением нашего эпического курса
по созданию клиент-серверной игры в шахматы по сети!

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

Расскажите на видео о своём подвиге.
Чем курс понравился, что было сложно,
что было интересно, что можно будет добавить.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 4 мин. [Показать отчёт]
Научился: Видео приложу по завершению т.к нету возможности сделать это сейчас. 
Сложности: не было 
78 Рефакторинг. С чего начать? 00:05:39
24 чел. ★ 5 Done
  На этом уроке мы начинаем рефакторинг
кода клиентской части на Unity.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 42 мин. [Показать отчёт]
Научился: Вынес класс DragAndDrop() в отдельный фай, добавить необходимый using в файл Board.cs. Протестировал работу после проведённого рефакторинга, все работает. 
Сложности: не было 
79 Рефакторинг. Координатные трансформации 00:14:04
24 чел. ★ 5 Done
  На этом уроке мы продолжаем рефакторинг
и сейчас мы выделим статические элементы.

Отчёт отправил: 17334. Дмитрий Б Выполнено за 44 мин. [Показать отчёт]
Научился: Создал класс Coords(), перенес функцию VectorToSquare() в класс Coords(), реализовал функции Coords().GetX/Y/Vector(), переименовал функцию VectorToSquare() в GetSquare(). Протестировал работу после проведённого рефакторинга 
Сложности: не было 
80 Рефакторинг. Чёрный ящик 00:07:38
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы займёмся словарями.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 27 мин. [Показать отчёт]
Научился: Создал абстрактный класс Box(), реализовал конструктор Box(), модифицировал работу с фигурами через Box() Протестировал работу после проведённого рефакторинга 
Сложности: не было 
81 Рефакторинг. Интерфейсная прослойка 00:10:35
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим интерфейс ICreatable.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 2 дня 17 час. 13 мин. [Показать отчёт]
Научился: Создал интерфейс ICreatable, модифицировал класс Board(), использовал новый функционал Протестировал работу после проведённого рефакторинга 
Сложности: не было 
82 Рефакторинг. Ящик с фигурами 00:04:16
1 тест
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы сделаем класс Box() абстрактным.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 20 мин. [Показать отчёт]
Научился: Создал  класс BoxFigures() наследовал от класса Box, Реализовал конструктор BoxFigures(), реализовал функцию BoxFigures().Init(), сделал класс Box() абстрактным, модифицировал класс Board(), использовал новый функционал Протестировал работу после проведённого рефакторинга 
Сложности: не было 
83 Рефакторинг. Многоклеточная сущность 00:06:48
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс BoxSquares().
Отчёт отправил: 17334. Дмитрий Б Выполнено за 42 мин. [Показать отчёт]
Научился: Создал класс BoxSquares() : Box, реализовал конструктор BoxSquares(), реализовал функцию BoxSquares().Init(), реализовал функцию BoxSquares().GetColor(), модифицировал класс Board(), использовал новый функционал Протестировал работу после проведённого рефакторинга 
Сложности: не было 
84 Рефакторинг. Вынос переноса 00:02:34
24 чел. ★ 4.9 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс Box().SetPosition().
Отчёт отправил: 17334. Дмитрий Б Выполнено за 10 мин. [Показать отчёт]
Научился: Реализовал функцию Box().SetPosition(), модифицировал класс Board(), использовал новый функционал 
Сложности: не было 
85 Рефакторинг. Спрайт, не дай себя заинтерфейсить 00:07:18
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс Box().SetSpriteAt().
Отчёт отправил: 17334. Дмитрий Б Выполнено за 5 час. 54 мин. [Показать отчёт]
Научился: Реализовал методы Box().SetSpriteAt(),  дописал интерфейс ICreatable(), модифицировал класс Board(),  использую новый функционал 
Сложности: не было 
86 Рефакторинг. Клетка в клетке 00:04:46
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы перенесём и разделим класс ShowSquare().
Отчёт отправил: 17334. Дмитрий Б Выполнено за 12 час. 37 мин. [Показать отчёт]
Научился: Перенес ф-цию ShowSquare() из Board() в BoxSquares(), реализовал ф-ции Box().MarkSquare() Модифицировал класс Board(), использую новый функционал Протестировал работу после проведённого рефакторинг 
Сложности: не было 
87 Рефакторинг. Шахматная независимость 00:07:23
24 чел. ★ 5 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы перенесём некоторые функции в класс BoxSquares().
Отчёт отправил: 17334. Дмитрий Б Выполнено за 39 мин. [Показать отчёт]
Научился: Перенес ф-ции UnmarkSquares() из Board() в BoxSquares(),  MarkSquaresFrom/To() из Board() в BoxSquares(), модифицировал класс Board(), использую новый функционал Протестировл работу после проведённого рефакторинга 
Сложности: не было 
88 Рефакторинг. Хоровод из четырёх фигур 00:14:37
24 чел. ★ 4.9 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы порефакторим функционал превращения пешки.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 день 10 час. 2 мин. [Показать отчёт]
Научился: Создл константы proFigures, minx, whitey, и blacky. Реализовал ф-ции GetWhite/BlackProFigure(). Модифицировал ф-кции InitGameObjects(), и ShowPromotionFigures(). Протестировал работу после проведённого рефакторинга, все работает! 
Сложности: не было 
89 Рефакторинг. Волшебник изумрудного ящика 00:18:39
24 чел. ★ 4.9 Done
  Мы продолжаем рефакторинг нашего кода.
На данном уроке мы создадим класс BoxPromots().
Отчёт отправил: 17334. Дмитрий Б Выполнено за 11 час. 2 мин. [Показать отчёт]
Научился: Оптимизировал код с прошлого урока, - создал класс BoxPromots() : Box, - реализовал конструктор BoxPromots(), - реализовал функцию BoxPromots().Init(), - переместить константы в класс BoxPromots(), - переместил функцию ShowPromotionFigures() в класс BoxPromots(), - реализовал функцию BoxPromots().HidePromotionFigures(), - реализовал функцию Box().SetSpriteFor(), - реализовал функцию BoxPromots().GetPromotionFigure(), - модифицировал класс Board(), использую новый функционал, - протестировал работу после проведённого рефакторинга. 
Сложности: хочу спросить, куда делась ф-ция  -  InvokeRepeating("Refresh", 2, 2);     void Refresh()     {         string fen = client.GetFenFromServer();         if (chess.fen == fen) return;         chess = new Chess(fen);         ShowFigures();         squares.MarkSquaresFrom(chess.YieldValidMoves());         promots.HidePromotionFigures();     } , и в каком уроке мы ее переносим? Спасибо 
90 Рефакторинг. Потерянная пешка 00:36:59
24 чел. ★ 4.9 Done
  На этом уроке мы вернёмся к нашей библиотеке
для исправления старой ошибки: пешка может
превратиться в чужую фигуру ил остаться пешкой.

Отчёт отправил: 17334. Дмитрий Б Выполнено за 11 час. 21 мин. [Показать отчёт]
Научился: Реализовал ф-ции: FigureMoving().CheckPromotion(), и Moves().CanPawnPromote(), доработал ф-цию Moves().CanPawnMove(), Заменил библиотеку ChessRules везде где используется, Протестировал работу после проведённых исправлений, все работает 
Сложности: много времени ушло на тесты 
91 Рефакторинг. Класс шахматной игры 00:13:15
23 чел. ★ 4.8 Done
  ЭТОТ УРОК НУЖНО ПЕРЕЗАПИСАТЬ. ДЛЯ ЭТОГО МНЕ НУЖЕН ПРОЕКТ ДО ЕГО ВЫПОЛНЕНИЯ.
ПОЖАЛУЙСТА ПЕРЕД ВЫПОЛНЕНИЕМ ЭТОГО УРОКА СОЗДАЙТЕ АРХИВ ПРОЕКТА И ПРИШЛИТЕ ЕГО МНЕ.

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

Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 час. 4 мин. [Показать отчёт]
Научился: Создал класс Game(), Реализовать функции: Game().Init(), Реализовал ф-ии Game().GetMoves(), Game().GetFigureAt(), Game().Move() Протестировал работу после проведённого рефакторинга, все работает!) 
Сложности: не было на данном этапе 
92 Рефакторинг. Двухэтажное превращение 00:16:50
22 чел. ★ 5 Done
  Мы всё ближе и ближе к финишу нашего рефакторинга.
На данном уроке мы вынесем оставшуюся логику игры в класс Game().

Отчёт отправил: 17334. Дмитрий Б Выполнено за 9 час. 57 мин. [Показать отчёт]
Научился: Проверку в IsValidMove() сделал ранее. Реализовал функции Game().NextMove(), Game().NextPromotionMove() Протестировал работу после проведённого рефакторинга, все работает! 
Сложности: на данном этапе не было 
93 Рефакторинг. Финальное причёсывание 00:06:58
22 чел. ★ 5 Done
  Мы поздравляем тебя с завершением рефакторинга.
На данном уроке мы причешем наши скрипты.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 4 час. 42 мин. [Показать отчёт]
Научился: Убрал во всех скриптах неиспользуемые юзинги, переместил вызов MarkSquaresFrom(), и HidePromotionFigures() в ShowFigures(), отимизировал функции инициализации. Работу протестировал после проведённого рефакторинга, все работает! 
Сложности: не было сложностей в данном уроке 
94 Рефакторинг. Последний аккорд 00:14:10
23 чел. ★ 4.9 Done
  На этом уроке мы заканчиваем наш эпический курс.
Получилось здорово.
Я доволен результатом.
Надеюсь, вы тоже.
Мы проделали огромную работу.
Каждый стал чуточку умнее и опытнее.
Отчёт отправил: 17334. Дмитрий Б Выполнено за 1 час. 12 мин. [Показать отчёт]
Научился: Шахматный клиент сервер почти готов, все прошло успешно, без непредсказуемости.. На мое мнение, нужно будет еще добавить к приложению , статистику, таймер, время, и сопровождающие инструкции к игры, чем и займусь позже 
Сложности: не было 
95 VIP. Меню DimanDOSа 00:27:50
20 чел. ★ 5 Done
  1. Создание и размещение кнопки вызова меню и панели с кнопками.
2. Программирование действий по нажатиям кнопок -
создание функций и привязка их к событиям нажатия.

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

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





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

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

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

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


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



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