807просмотров
27.8%от подписчиков
27 февраля 2026 г.
Score: 888
Modularizing Swift Apps with SPM 🚨 Когда приложение разрастается, монолитный таргет превращается в ад: медленные сборки, путаница в зависимостях, сложно параллелить работу. В статье разбирается подход к модульности через SPM — без фреймворков, только local packages: Domain, API, Features. 📌 Основная идея: разбить на слои как в clean architecture. Domain — чистые модели, протоколы, use cases (без UIKit/SwiftUI). API — networking, remote data source, зависит от Domain. Features — экраны, бизнес-логика, зависят от Domain + API. Ключевые советы:
➡️ Public протоколы в Domain — contracts для всех слоёв
➡️ Нет циклических зависимостей
➡️ Tests в каждом пакете: unit‑тесты изолированы
➡️ Local SPM: file:// пути, легко в одном репо ℹ️ Автор подчёркивает: это не про идеальную архитектуру, а про скорость и масштабируемость. На legacy монолите начинай с выноса Domain, потом API, features по мере роста. Результат — приложение, где новый разработчик за 5 минут понимает структуру, а CI не ждёт 10 минут на сборку.