美文网首页
架构框架

架构框架

作者: 一只长毛猫 | 来源:发表于2018-05-02 20:17 被阅读12次

    框架架构

    框架架构主要是为了以下几点:
    1 模块化
    2 分层
    3 解耦
    4 降低代码重合度

    客户端整体架构



    1 独立于App的通用层 (时长,崩溃,网络第三方库)
    2 通用业务层(通用基础组件,特殊UIImageView封装)
    3 中间层(用于解耦)
    4 业务A、业务B、业务C
    意义:单独拿出一个业务,都可以形成一个App

    业务之间解耦的通信方式?

    1 openUrl
    2 依赖注入(通过遵循协议)

    复杂页面架构

    View: 控件初始化,设置数据,交互事件代理
    ViewController: 视图创建组合、协调逻辑、事件回调处理
    ViewModel:业务逻辑层、数据增删改查封装者、线程安全处理
    Engine : 增删改查、网络请求、数据解析、本地处理逻辑

    图片缓存

    图片缓存框架设计


    图片读写流程


    计算机组成原理中,多级缓存设计思想,提高查找效率

    内存设计问题
    1存储size :10kb以下50张,100kb以下20张,100kb以上10张
    2 淘汰策略 :队列先进先出方式淘汰。LRU算法-最近最久未使用算法(如30分钟之内是否使用过)。1定时检查 2 每次进行读写、前后台切换。(注意开销2优先 )

    磁盘设计问题
    1 存储方式
    2 大小限制(100M)
    3 淘汰策略(超过7天)

    网络设计需要考虑问题?
    1 图片最大并发量
    2 请求超时策略
    3 请求优先级

    图片解码?
    对不同格式的图片,解码采用什么方式来做?
    应用策略模式对不同图片进行解码
    在哪个阶段进行图片解码?
    磁盘读取之后, 网络请求返回后。

    相关文章

      网友评论

          本文标题:架构框架

          本文链接:https://www.haomeiwen.com/subject/ntacrftx.html