Делить проект на модули - довольно популярный подход при разработке приложений, особенно когда MVP выпущен, а приложение начинает неконтролируемого обрастать межмодульными зависимостями. Сперва модули выделяют в отдельные классы/структуры, реализуя взаимодействия через интерфейсы, на втором этапе часть модулей переезжают в отдельные таргеты, и используются в составе проекта, как фреймворки. И т.д.
Все это не просто решает многие проблемы, но и создает новые. К примеру зависимость модулей друг от друга создает потенциальные проблемы в скорости компиляции проекта, когда один модуль не может быть скомпилирован, пока не скомпилирован другой. И это лишь вершина айсберга.
Довольно интересный опыт есть у ребят в СберЗдоровье, их лид Кирилл Смирнов делится им в своих статьях (первая, вторая) на Хабре. Советую к прочтению.
Кстати, года три назад я выкладывал пост про ортогональность ваших проектов, и как наследование способно сделать вам плохо.
Делить проект на модули - довольно популярный подход при разработке приложений, особенно когда MVP выпущен, а приложение начинает неконтролируемого обрастать межмодульными зависимостями. Сперва модули выделяют в отдельные классы/структуры, реализуя взаимодействия через интерфейсы, на втором этапе часть модулей переезжают в отдельные таргеты, и используются в составе проекта, как фреймворки. И т.д.
Все это не просто решает многие проблемы, но и создает новые. К примеру зависимость модулей друг от друга создает потенциальные проблемы в скорости компиляции проекта, когда один модуль не может быть скомпилирован, пока не скомпилирован другой. И это лишь вершина айсберга.
Довольно интересный опыт есть у ребят в СберЗдоровье, их лид Кирилл Смирнов делится им в своих статьях (первая, вторая) на Хабре. Советую к прочтению.
Кстати, года три назад я выкладывал пост про ортогональность ваших проектов, и как наследование способно сделать вам плохо.
That strategy is the acquisition of a value-priced company by a growth company. Using the growth company's higher-priced stock for the acquisition can produce outsized revenue and earnings growth. Even better is the use of cash, particularly in a growth period when financial aggressiveness is accepted and even positively viewed.he key public rationale behind this strategy is synergy - the 1+1=3 view. In many cases, synergy does occur and is valuable. However, in other cases, particularly as the strategy gains popularity, it doesn't. Joining two different organizations, workforces and cultures is a challenge. Simply putting two separate organizations together necessarily creates disruptions and conflicts that can undermine both operations.
Telegram has exploded as a hub for cybercriminals looking to buy, sell and share stolen data and hacking tools, new research shows, as the messaging app emerges as an alternative to the dark web.An investigation by cyber intelligence group Cyberint, together with the Financial Times, found a ballooning network of hackers sharing data leaks on the popular messaging platform, sometimes in channels with tens of thousands of subscribers, lured by its ease of use and light-touch moderation.telegram from br