![](https://squidex.jugru.team/api/assets/srm/2bjRAFaMm6dl2ctZ3ya44A/102086-141745198-misha-levchenko-state-management-dlya-chaynikov.jpg?cache=3600&width=74&height=74&mode=CropUpsize)
Миша Левченко
Компания: Авто.ру
Тип доклада: Доклад
В любом крупном Android-проекте рано или поздно возникает необходимость разбить его на модули. Что делать, если вы все-таки начали модуляризацию слишком поздно и у вас уже есть огромных размеров монолит из сотен тысяч строк кода и сотен экранов? Иногда даже совсем небольшие фичи тянут множество зависимостей и требуют сложного рефакторинга. Как понять, откуда начать, как масштабировать этот процесс и довести его в итоге до конца?
Миша проанализировал разные алгоритмы поиска сообществ в графах и создал инструмент, который стал его путеводителем в решении задачи модуляризации. Ориентируясь на различные метрики, можно предсказывать, на сколько модулей будет оптимально разбить ваш монолит, какие классы должны войти в них и с каких модулей лучше начинать.
Компания: Авто.ру
Компания: Flipper Devices