Conversation
|
Сделал привязку алгоритма соренсена. Поправил алгоритм так, как сказал @LiceyMaxim |
ARQtty
left a comment
There was a problem hiding this comment.
Нужен рефактор алгоритмов сравнения
| @@ -0,0 +1,9 @@ | |||
| def comparison(first_phrase: str, second_phrase: str) -> float: | |||
There was a problem hiding this comment.
Раньше у нас был план сделать базовый класс алгоритма проверки. Сейчас добавился третий алгоритм сравнения, и всё начало быть несистемно и хаотично. Сделай пожалуйста базовый класс проверки в models/ и отнаследуй от него все текущие алгоритмы сравнения
- Create BaseAlgorithm - Inherit algorithms from it - Rename test files to single standart
|
ARQtty
left a comment
There was a problem hiding this comment.
Базовый Алгоритм должен быть только один. Нужно переместить бизнес-логику работы с файлами лабы в специальный для этого класс, а сравнение лаб как строк оставить в models/
| class BaseCheck(): | ||
|
|
||
| def __init__(self) -> None: | ||
| def __init__(self, comparison_method: BaseAlgorithm.comparison) -> None: |
There was a problem hiding this comment.
не стоит прокидывать конкретный метод класса. Достаточно прокинуть класс
| raise NotImplementedError | ||
| return self.comparison_method(code, lab) | ||
|
|
||
| def name(self) -> str: |
There was a problem hiding this comment.
тут можно сделать магию вроде return self.__class__.__name__
| from models.base_algorithm import BaseAlgorithm | ||
|
|
||
|
|
||
| class BaseCheck(): |
There was a problem hiding this comment.
Базовая Проверка? Что за проверка? Вне контекста непонятно. Базовый Алгоритм Сравнения был бы более трактуем
|
|
||
| def name(self) -> str: | ||
| return self.__class__.__name__.lower() | ||
| return self.__class__.__name__.lower()[:-5] |
There was a problem hiding this comment.
хочется не заниматься таким переопределением. Можно делать это в базовом классе
- Move algorithm implementation to models
|
Перекинул обработку алгоритмов в models |
| self.connector = SQLiteConnector() | ||
| self.levenshtein = Levenshtein() | ||
| self.jaccard = Jaccard() | ||
| self.methods = [ |
There was a problem hiding this comment.
тут не хватает коммента о том, зачем сохранять именно такие туплы
|
ARQtty
left a comment
There was a problem hiding this comment.
гуд. Чуть уточнить типы - и можно мержить
|
Поправил типизацию |
No description provided.