Я не говорю что есть связь между звёздами и качеством кода, скорее говорю что некачественный код может быть объективно лучше, нежели 5x сил на реализацию паттерна
Именно! Проблем с Viper нет никаких, есть вопросы «зачем», на которые часто ответ «ну так делают»
А то что поддержка сложным паттернов обходится в 2x-5x времени, или что есть другие, лучшие варианты (или вообще плюнуть и написать это одностраничное приложение все в контроллере) — боятся будто нечесть серебряных пуль)
Свою не продвигал, считаю что визуалка вытащила. Хотя для громкого заглавия использовал «плохую архитектуру». Проблемы она решает, я ей доволен — считаю что хороший выбор сделал.
История скорее о том, «сидя в зонах комфорта» юзают один паттерн под все случаи жизни.
Грустно когда смотрю код подчиненых, и вижу VIPER где только можно и нельзя. Тренды…
А то что поддержка сложным паттернов обходится в 2x-5x времени, или что есть другие, лучшие варианты (или вообще плюнуть и написать это одностраничное приложение все в контроллере) — боятся будто нечесть серебряных пуль)
Это сборка модуля. Если не ошибаюсь, прием называется Dependency Injection и очень близко идет с протокольным подходом.
Никаких подробностей реализации. Это просто выбор одного из модулей. Хотите банер сверху? Будет:
SPRequestPermissionAssistant.modules.banner
Хотите диалоговое окно, но не интерактивное, а с блюром:
SPRequestPermissionAssistant.modules.dialog.blur
История скорее о том, «сидя в зонах комфорта» юзают один паттерн под все случаи жизни.
Грустно когда смотрю код подчиненых, и вижу VIPER где только можно и нельзя. Тренды…