Курсы по программированию

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

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Шахматы по сети / Рефакторинг. Класс шахматной игры

  • ЭТОТ УРОК НУЖНО ПЕРЕЗАПИСАТЬ. ДЛЯ ЭТОГО МНЕ НУЖЕН ПРОЕКТ ДО ЕГО ВЫПОЛНЕНИЯ.
    ПОЖАЛУЙСТА ПЕРЕД ВЫПОЛНЕНИЕМ ЭТОГО УРОКА СОЗДАЙТЕ АРХИВ ПРОЕКТА И ПРИШЛИТЕ ЕГО МНЕ.

    Мы на финишной прямой нашего рефакторинга.
    На данном уроке мы вынесем логику игры в отдельный класс Game().
  • Дата отправки отчёта: 15 мая 2018 г.
  • Задание выполнено: за 12 час. 56 мин.
  • Чему научился: Как бы это по мягче выразиться?
  • Что было сложным:
    После одного из уроков по рефакторингу, я обратил внимание,
    что в моем коде используются данные класса Client, а в видео уроке нет.
    Последовал ответ: "Потому что эта часть уроков создавалась до создания Клиента."
    Какое-то время это не особо мешало. Однако, выполняя урок
    Рефакторинг. Класс шахматной игры., я не сумел уладить код, так
    чтобы Client не мешал.
    Конечно, это ненормально, когда нарушается естественное изложение
    материала. Как решить эту проблему???

  • Оценка видео-уроку:
Отчёт от 11589 за Шахматы по сети / Рефакторинг. Класс шахматной игры




Оцени работу

 
Сохранить страницу:

1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Yefim  # Шахматы по сети / Рефакторинг. Класс шахматной игры / 2018-05-15 22:52

Я не понимаю, почему у вас chess подчёркивает.


10558. --
Иван Воронин
Иван Воронин
ответить
→  Yefim  # Шахматы по сети / Рефакторинг. Класс шахматной игры / 2018-05-15 23:20

Чтобы понять проблему, нужно изучить код в целом. На скриншоте видно лишь то, что объект chess подчёркивается, как будто он не инициализирован в данном контексте или вовсе отсутствует. Т.е. может быть вы удалили лишнее, если бы этот Client была ваша доработка кода, то нужно было бы реализовать рефакторинг кода так, чтобы не нарушать целостность логики идей, на которые было потрачено время. Я думаю, вам стоит изучить вопрос происхождения объекта chess, так как это вообще основной игровой объект и без него вообще ничего работать не будет. Сравните код прошлого урока с текущим, посмотрите где используется chess, откуда он взялся и где он в текущем уроке у вас отсутствует, могли банально удалить его случайно.


10717. --
OloloCode
OloloCode
ответить
→  Yefim  # Шахматы по сети / Рефакторинг. Класс шахматной игры / 2018-05-16 00:41

Судя по скриншоту, в окошке Output сообщение об ошибке что какой то файл .cs  с исходным кодом не найден. Возможно он был удален. В таком случае он в Solution Explorer должен подсвечиваться желтым восклицательным знаком. Иногда такая проблема возникает при удалении файла из проекта (ссылка в главном файле проекта на файл осталась при некорректном удалении). так же на скриншоте видно что проект назван Chess и класс назван Chess, это то же может привести к конфликту (например если пространство имен тоже Chess). Класс Chess из библиотеки? Или тут в этом же  проекте? На скриншоте его не видно, обычно класс помещают в отдельный одноименный файл. В общем как написали ниже причин может быть много, и нужно смотреть код.


  • Отчёт оценивали:
    17443WildOrc+1   1Евгений Волосатов+1   10494Алексей В.+1   17606Виктор+1   10717OloloCode+1   3922Александр+1   6452Кирилл Шмойлов+1   8275Tekashnik+1   791Валерий Жданов+1   10895Danil42Russia+1   9980Timoha+1   5394Anton+1   4395Денис+1   17947Dmitry Sinitsin+1   16066Bodrik_torf+1   16218Дмитрий+1   18249Александр+1   3747Сергей+1   459Сергей Сергеевич+1   17255Слава+1   6644valerys Nikola+1   Посетитель+1  

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





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

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

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

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


Научился: Ну как - научился тому, что дьявол кроется в деталях. Нужно быть внимательным к мелочам.
Трудности: Грех жаловаться, что что-то сложное.



Научился: Запутанный урок получился, что то есть, чего то нет. Самое главное как я понял в классе Board //chess = new Chess(Fen); меняем на game.Move(Fen);