Opened 4 years ago

Closed 4 years ago

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

HW #3 shirokov.kirill

Reported by: shirokov.kirill Owned by: Дмитрий Лапшин (lapshin)
Component: HW #3 (Huffman) Version: 3.0
Keywords: Cc:

Description

Написано пока что без тестов

Change History (4)

comment:1 Changed 4 years ago by shirokov.kirill

Тесты появились

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

Owner: changed from Дмитрий Лапшин (lapshin) to shirokov.kirill
Summary: HW #3HW #3 shirokov.kirill
Type: ожидается проверкаожидаются исправления
Version: 1.02.0

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

  1. Если в файле ≤1 видов байт то не справляется. Или падает. (да бывает меньше 1).

7/9.

Тесты: не компилируется, хотя у меня doctest-dev даже стоит! Выглядят ок, конечно, но блин.

Стиль:

  1. std::string arg = static_cast<std::string>(argv[i]);:
    • Инициализация не приведение типа, там конструктор: std::string arg = argv[i]; Или уж auto arg.
    • std::string_view arg = argv[i]; и нет копии данных.
  2. //ok?
  3. Пробелы.
  4. Магические константы.
  5. Объявление переменных далеко от использования.
  6. Предложения через запятую. Очень плохо.

4/8.

Архитектура:

  1. CLI: что-что возвращает parse? Это метод класса, возвращающий другой экземпляр?
  2. Всё публичное?..
  3. Сырые указатели. Когда есть умные и ссылки.
  4. Зачем id? Их процедура получения непотокобезопасна.
  5. Вообще работа с потоком бит просится вынестись.

3/5.

comment:3 Changed 4 years ago by shirokov.kirill

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

Тесты собираются, убраны ок, исправил вывод исключений(на более информативные), добавил случай пустого файла. Публичные поля в классах сделаны для удобства тестирования, сама архитектура открытых полей не предполагает. Заново переформатировал код.

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

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

Не линкуется. Ваще не линкуется. Даже если починить: lm.h в тестах? Эт кто? libwine-dev?!

Корректность: -5 за сборку. На файлах из одного вида байт не расжимает обратно. 2/9.

Тесты: не собираются от слова совсем.

Стиль:

  1. std::string arg = static_cast<std::string>(argv[i]);.
  2. Магические константы.
  3. Пробелы)

5/8.

Архитектура:

  1. CLI: что-что возвращает parse? Это метод класса, возвращающий другой экземпляр?
  2. Зачем id? Их процедура получения непотокобезопасна.
  3. Всё публичное?.. Тесты можно было сделать через друзей.
  4. Умные указатели.

3/5.

суммарно посылка хуже предыдущей, засчитана предыдущая.

Note: See TracTickets for help on using tickets.