独立小团队如何在开发时省钱省事?这是我们选择的技术架构
内容提要
Matrix是少数派的写作社区,推荐了一篇关于独立开发者技术架构的文章,介绍了他们在开发'及游册'App时使用的技术方案,包括KMM、Compose、SwiftUI和AWS Serverless等。强调技术实现应当是相对'cheap'的,为独立产品的技术架构提供分享和灵感。文章还提到了UI、Domain和Data三层架构的设计,资源文件处理、媒体资源的云端存储和服务端方案的选择等。
关键要点
-
Matrix是少数派的写作社区,主张分享真实的产品体验和经验。
-
文章介绍了独立开发者在开发'及游册'App时使用的技术方案,包括KMM、Compose、SwiftUI和AWS Serverless。
-
强调技术实现应当是相对'cheap'的,旨在为独立产品的技术架构提供灵感。
-
客户端采用KMM作为跨平台技术,UI部分使用Jetpack Compose和SwiftUI。
-
选择双端开发是为了覆盖99%的移动端用户,降低开发成本。
-
推荐使用KMM或Flutter作为跨平台开发的技术选择。
-
遵循UI、Domain和Data三层架构设计,提升代码的可维护性和复用性。
-
UI层使用Kotlin实现ViewModel,确保可复用性和平台无关性。
-
Domain层用于抽取复杂数据操作,减少ViewModel的代码行数。
-
Data层设计为Repo和DataSource,管理应用数据的来源和操作。
-
建议尽可能使用本地数据以提高应用的离线访问能力。
-
注意第三方依赖的管理,避免引入不必要的库。
-
资源文件处理要关注包体积,使用高效格式如HEIF和WebP。
-
云端存储媒体资源需注意内容安全和成本问题。
-
服务端方案推荐使用Serverless和BaaS,降低成本和运维负担。
-
总结希望为独立开发者提供参考,分享'及游册'的技术架构方案。