Задать вопрос
aakumykov
@aakumykov
Начинающий Android-разработчик

Нужно ли при разработке библиотеки следовать принципу одной ответственности?

В отношении библиотеки его можно было бы назвать "принцип однослойности задачи"...
Можно скрыть в библиотечном методе много сложной логики. При этом уровень инкапсуляции вырастет, уменьшится сложность кода основной программы, что хорошо. С другой стороны, увеличится сложность библиотеки. А ещё она станет тянуть за собой дополнительную зависимость, версия которой часто будет не совпадать с версией такой же библиотеки в основном приложении, увеличивая тем самым его размер.
Казалось бы, ответ очевиден: не нужно "тянуть" в библиотеку много зависимостей ради удобства. Но я регулярно наблюдаю это у библиотек, с которыми работаю: все всё тянут.
Как поступать правильно?
p.s. Если это имеет значение, пишу код для Android.
  • Вопрос задан
  • 166 просмотров
Подписаться 1 Средний Комментировать
Ответ пользователя mayton2019 К ответам на вопрос (2)
mayton2019
@mayton2019
Bigdata Engineer
Да можно. Это называется фасадом. Ограничение в single responsibility обычно относится к ООП и к классам.

Вообще если ты фрилансер и делаешь просто заказ чтоб отдать его с концами - то тебе безразлично что будет внутри. Главное чтоб ты понимал. А соглашения по декомпозиции кода на части появляются только как результат
коллективной работы над кодом. Тоесть ты должен спрашивать не qna, а свою команду как вам удобнее
разрабатывать код.
Ответ написан
Комментировать