知识卡片

App架构演进是复杂度主导因素轮转的结果

普通读书笔记卡 · 1695

内容

App架构经历了网页壳、原生开发、混合方案、组件化容器化四个阶段的演进,每步都对应业务主要复杂度的切换,而非单纯技术潮流驱动。早期方向不明,选成本最低的方案利于试错;成为主流后体验差距成主要矛盾,转向原生开发;竞争加剧后迭代速度重新重要但原生效率低,转向混合方案,只求平衡不求同时解决。发散:架构没有终局最优解,只有匹配当下复杂度的阶段性最优解。

参考来源

- 位置:《从0开始学架构》第54章《49|谈谈App架构的演进》"Web App""原生App""Hybrid App"三节(源文件:_epub-src/OEBPS/Text/part0053_split_002.html、part0053_split_003.html) - 结论依据:原文明确早期"当时的业务重心还是在PC互联网上,移动互联网更多是尝试性的。既然是尝试,那就要求快速和低成本……Web App这种包壳架构就被大家作为首选尝试架构了";随后"移动开发的复杂度从'快速开发'和'低成本'转向了'用户体验',而要保证用户体验,采用原生App的架构是最合适的";再后来"移动开发的复杂度又回到了'快速开发'……由于Android、iOS、Windows Phone的原生开发完全不能兼容……因此自然快不起来"。 - 原始内容:既然是尝试,那就要求快速和低成本……Web App这种包壳架构就被大家作为首选尝试架构了,其主要解决"快速开发"和"低成本"两个复杂度问题……移动开发的复杂度从"快速开发"和"低成本"转向了"用户体验"……移动开发的复杂度又回到了"快速开发"。