Opened 4 years ago
Closed 4 years ago
#709 closed ожидается проверка (задача сдана)
HW #2 lopatin.mikhail
Reported by: | lopatin.mikhail | Owned by: | Дмитрий Лапшин (lapshin) |
---|---|---|---|
Component: | HW #2 (X0) | Version: | 2.0 |
Keywords: | Cc: |
Description
Change History (5)
comment:1 Changed 4 years ago by
Owner: | changed from Дмитрий Лапшин (lapshin) to lopatin.mikhail |
---|---|
Summary: | HW #2 → HW #2 lopatin.mikhail |
Type: | ожидается проверка → ожидаются исправления |
comment:2 Changed 4 years ago by
Owner: | changed from lopatin.mikhail to Дмитрий Лапшин (lapshin) |
---|---|
Type: | ожидаются исправления → ожидается проверка |
"В некоторых ситуациях неправильно определяешь состояние игры."так и не понял в каких
comment:3 Changed 4 years ago by
Owner: | changed from Дмитрий Лапшин (lapshin) to lopatin.mikhail |
---|---|
Type: | ожидается проверка → ожидаются исправления |
Version: | 1.0 → 2.0 |
Корректность:
Makefile
всё ещё неправильный (нет транзитивных зависимостей на заголовки).- Имя программы всё ещё неправильное.
- Очень медленно работает, как мне кажется.
- Нарушаешь формат вывода: пробел после двоеточия, нет перевода строчки перед доской.
- Когда доска ваще полная, неверно определяешь исход.
- Не до конца обрабатываешь неправильно введённые ходы.
11.
Тесты: явно не покрывают все публичные методы. Подумай, а нужно ли столько методов. 3.
Стиль:
- Неправильная структура файлов.
- Перечисления модели что-то знают о текстовом представлении, не очень хорошо.
- Ты этим перестал пользоваться, это хорошо.
- Зачем ты ж на каждый запрос поля отдаёшь глубокую копию всей доски, лапочка?
- Константы глобальные можно было бы сделать статическими в классе
Board
или где надо. - Магическое 100.
- Названия констант слабо отражают их суть (
WIN_VALUE
?).- Суть констант не в том, что у каждого числа должно быть имя, а в том, чтобы не было внезапных логически связанных но продублированных (и таким образом развязанных) значений. Цикл с 0 это не откровение, а вот что поле 10 на 10 — да.
- Пробелы!
- У вектора есть конструктор с числом и значением.
- Дублируется строчка про
while (!get_coord)
. - Вот я на это смотрю и думаю, что почему не переменная:
if (engine->get_field()[i][j] == Field::X) std::cout << 'X'; else if (engine->get_field()[i][j] == Field::O) std::cout << 'O'; else if (engine->get_field()[i][j] == Field::NONE) std::cout << '.';
Потом вспоминаю, чтоget_field
возвращает всю доску копией. И зачем тогда методget_state
? - Явно встречаются лишние и дублирующиеся инклуды. Причищать.
4.
comment:4 Changed 4 years ago by
Owner: | changed from lopatin.mikhail to Дмитрий Лапшин (lapshin) |
---|---|
Type: | ожидаются исправления → ожидается проверка |
comment:5 Changed 4 years ago by
Resolution: | → задача сдана |
---|---|
Status: | assigned → closed |
Корректность:
- Формат вывода. Перевод строки после приглашения ввода.
- Принимаешь плохие вводы.
12.
Тесты: явно не покрывают все публичные методы. Подумай, а нужно ли столько методов. 3.
Стиль:
- Неправильная структура файлов.
8.
Note: See
TracTickets for help on using
tickets.
Корректность:
Makefile
(не пересобирает при изменении заголовочных файлов).0 0 0
в одну строчку ты разрешаешь.7.
Тесты:
2.
Стиль:
bool
очень удобно и понятно.camelCase
, тоwith_underscores
.StdioBoardView::x
?Board
так много выставлено наружу, включая все ячейки?Board.h
: зачемiostream
иstdint.h
(можетcstdint
?)?5.