如果让你架构一个app, 你会怎么做

首先架构要解决几个问题

  1. 如何让业务工程师更方便的调用网络api, 尽可能的在各种网络情况下都有良好的体验?
  2. 页面如何组织才能降低业务方的耦合度, 尽可能降低业务方界面开发的复杂度, 提高他们的效率.
  3. 当数据在本地有存取的需求的时候, 如何合理的安排?如何尽可能的减小性能的消耗
  4. iOS有审核周期, 如何紧急修复bug, 如何发布一些热更新?

总结起来也四点

  1. 网络层的设计方案
  2. 页面的展示,调用,组织都有那些方案
  3. 本地持久化的方案
  4. 动态部署的方案

我们需要了解业务方的需求什么, 从而设计出合理的架构.

什么叫一个好的架构

  1. 代码整齐, 分类明确, 没有common, 没有core, 这么恶心的命名
  2. 不用文档, 业务方很容易上手
  3. 思路和方法要统一, 尽量不要多元
  4. 不要横向依赖, 不要跨层
  5. 对业务方该有限制的地方
  6. 容易测试
  7. 保持一定量的超前性
  8. 接口少, 接口参数少
  9. 高性能

数据层持久化方案

  1. 构造异步执行单例类(队列), 处理所有的数据库写入和读取的操作
  2. 数据库类&数据库池(不同的数据库连接)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,126评论 2 89
  • 前言 嗯,你们要的大招。跟着这篇文章一起也发布了CTPersistance[https://github.com/...
    HeartPower阅读 3,490评论 0 4
  • 一、生命周期 一个事物一旦出生,就必然会长大,变异,一旦长大,就面临着衰老,接下来就是消亡了,这个过程就称为一个事...
    ZyBlog阅读 7,597评论 1 11
  • 喜欢上了画月亮 借着月光在纸上慢慢涂出朦胧的夜空 看着月光模糊的画着 喜欢这种安静 听大树沙沙响着 听虫子小声叫着...
    月光海雾阅读 3,493评论 1 3
  • 霜降,二十四节气之一,每年公历10月23日左右,霜降节气含有天气渐冷、初霜出现的意思,是秋季的最后一个节气,...
    云麓阅读 3,696评论 2 8