Opened 4 years ago

Closed 4 years ago

#693 closed ожидается проверка (задача сдана)

HW #2 shein.andrey

Reported by: Андрей Шеин Owned by: Дмитрий Лапшин (lapshin)
Component: HW #2 (X0) Version: 3.0
Keywords: Cc:

Description


Change History (5)

comment:1 Changed 4 years ago by Дмитрий Лапшин (lapshin)

Owner: changed from Дмитрий Лапшин (lapshin) to Андрей Шеин
Summary: HW #2HW #2 shein.andrey
Type: ожидается проверкаожидаются исправления
Version: 1.0

Корректность:

  1. Валгриииинд сотнями ошибок.
  2. Ещё, кажется, иногда проверка конца игры зависает, или зависает цикл игры, потому что проверка конца игры не говорит, что конец наступил, а ошибки чтения игнорируются. Не детерминированно.
  3. Ещё кажется ты -1 -1 воспринимаешь не так как надо.

12.

Тесты: Нормась. 5.

Стиль:

  1. enum GameDetails: Круто!
    1. Можно имя енаму не давать
    2. А давай начнём это делать в стиле C++11:
      class Board {
      public:
          static constexpr int FIELD_SIZE = 10;
      };
      
  2. Я не знаю, кто рассказал тебе про альтернативные операторы, но выпиливай к чертям.
  3. Переносы строк: если уж написал if () {, то тело на следующей строчке.
  4. bool silent = argc == 2; а давай как приличные люди.
  5. Куча static функций в целом норм, но на будущее думай о статических методах.
  6. delete_spaces, correct_data — а просто результат sscanf проверить?
  7. char buffer[]; — я промолчу про strcpy, но ващет std::string::c_str.
    • Тем более размер у тебя буфера неправильный, UB.

7.

comment:2 Changed 4 years ago by Андрей Шеин

Owner: changed from Андрей Шеин to Дмитрий Лапшин (lapshin)
Type: ожидаются исправленияожидается проверка
Version: 1.02.0

comment:3 Changed 4 years ago by Дмитрий Лапшин (lapshin)

Owner: changed from Дмитрий Лапшин (lapshin) to Андрей Шеин
Type: ожидается проверкаожидаются исправления

Корректность:

  1. Ты разрешаешь ввод 0 0 0.

14.

Тесты: Ты не тестируешь все публичные методы, читай стиль. 4.

Стиль:

  1. COMING — это значит идёт? Тогда going, running и прочее, но не приходит ;)
  2. Board::can_move — чо ассёрт-то.
  3. return not пора закачивать)
  4. Зачем публичные статические методы check? Зачем они статические, если внутри всё равно Board &? Зачем внутри используется лишь публичное апи? Короче странно выглядят.
  5. Вообще между ними дублируется код, так что...
  6. Вообще много где почти все внутренности публичные.
  7. Ты написал в заголовке ~BoardView?() {}. Давай напишем = default;
  8. Все методы BoardView принимают ссылку на Board. Может просто сказать, что это поле базового класса?
  9. Енам на константах из була это такое себе.
  10. show_x_wins: show_player_won(Player)?
  11. override/final у деструктора не видно.
  12. BoardTest::run_all_tests: return;?
  13. #define DO_CHECK(EXPR) явно не в том месте.

Фух. Но тут много довольно по мелочи, 8.

comment:4 Changed 4 years ago by Андрей Шеин

Owner: changed from Андрей Шеин to Дмитрий Лапшин (lapshin)
Type: ожидаются исправленияожидается проверка
Version: 2.03.0

comment:5 Changed 4 years ago by Дмитрий Лапшин (lapshin)

Resolution: задача сдана
Status: assignedclosed

Корректность: 15.

Бонус: 10.

Тесты: 5.

Стиль:

  1. Вынесенные ±1 в константы это не оч полезно, согласен? Напомни мне на паре поговорить о смысле констант. И эти CORRECT_ARGC_SILENT...

Но это мелочь, 10.

Note: See TracTickets for help on using tickets.