Мы продолжаем создание шахматных классов на языке C#, которые позволят проверять правила игры. На этом уроке мы допишем класс Chess().
Дата отправки отчёта:
12 июня 2024 г.
Задание выполнено: за
1 час. 14 мин.
Чему научился:
Done!
Что было сложным:
Долго не мог разобраться с возвращаемым значением Fen для класса Chess. По идее, если он первичен, и дальше через его конструктор идёт создание новой доски, и уже туда посылается новый Fen, то не очень понятно зачем мы из класса Board берём значение Fen. Проверил, что может быть в момент хода используется ссылка напрямую Board.Fen, но нет, оттуда только проверка на цвет делается. К тому же нам путанится наблюдается. В вашем случае при инициализаци конструктора Chess(string fen) внутри него создаётся new Board (fen) - т.к. у вас и поле класса и название параметра с маленькой буквы, долго не мог какое значение берётся, но ведь берётся же в этом случае приоритет из параметра. А параметр fen по-умолчанию задан на стандартную позицию. Тогда зачем нужно поле Fen классу Chess, оно уже получается дублируется. Короче, я там поменял немного результат в расчёте на то, что каждый ход будет пересоздаваться класс Chess, и уже через него всё остальное. Если что потом переделаю обратно.
Оценка видео-уроку:
Оцени работу
Сохранить страницу:
Отчёт оценивали: 791. Валерий Жданов+125450. MaxB+13506. Алексей|BrisK|Кривицкий+1
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Модифицировал конструктор Chess(string fen)
Модифицировал метод Move(stirng move)
Создал вспомогательный конструктор Chess(Board board)
Модифицировал метод GetFigureAt(int x, int y)