@Redeve
Веб-макаке не хватит и 640гБ

Как правильно разделить большой модуль с единственным классом?

Приветствую всех.

Суть проблемы. Есть одно ООП-подобное полотно (жертва оверинжиниринга) с единственным классом на 1200 строк и почти с 50 методами. Методы разные, но все они работают напрямую с тремя таблицами - с пользовательскими данными и их правами (табл. 1), с данными чатов/групп/каналов (табл. 2),и есть всякие утилитарные методы для таблицы 3.
Медленно ковыряясь в этом полотне после двухлетнего перерыва встал вопрос оптимизации и упрощения кода модуля. Но.. с чего начать? Какие есть правильные пути и что можете посоветовать?
-
Пока долго изучал код и сочинял вопрос,придумал вариант с раздроблением класса на 4 маленьких. Где 1й - базовый, который подключается к базе и возвращает курсор, и 3 унаследованных от базового для тех самых трёх таблиц.
Правильно ли такое разделение или есть варианты получше? Чтобы всё было по красоте и OOP-style.
  • Вопрос задан
  • 172 просмотра
Решения вопроса 1
mayton2019
@mayton2019
Bigdata Engineer
Есть такое старое правило что сначала нужно писать тесты. Без тестов ты конечно можешь начать рефакторинг но если что-то сломалось то сложно будет детектировать поломку именно в тот момент. Это всплывёт позднее.

Далее без исходников сложно что-либо советовать. Тут - сколько людей столько и мнений.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
SpectrumData Екатеринбург
от 150 000 до 250 000 ₽
Rinkel Москва
от 50 000 до 100 000 ₽
Wanted. Лимассол
До 6 000 €
14 нояб. 2024, в 08:55
40000 руб./за проект
14 нояб. 2024, в 05:39
10000 руб./за проект