iOS架构构/框架

  • 图片缓存
  • 阅读时长统计
  • 复杂页面架构
  • 客户端架构

架构&框架

  • 模块化
  • 分层
  • 解耦
  • 降低代码的重合度

图片缓存

怎么设计一个缓存架构?
图片缓存框架
图片什么方法读写,过程是怎么样的?
  • URL的单项Hash值作为Key


内存设计

内存设计上要考虑什么什么问题?

  • 存储的size


  • 淘汰的策略

  1. 队列先进先出的特点
  2. 模拟LRU算法(30分钟之内有没有使用过)
    定时检测(耗性能)


    提高检查处罚频率
磁盘设计

磁盘设计要考虑什么?
磁盘的特点是空间大,但是读写耗性能

  • 存储方式
  • 大小限制
  • 淘汰策略(如某图片使用时间是否超过7天)
网络设计

要考虑什么问题?

  • 图片请求最大病啊放量
  • 请求超时策略
  • 请求优先级的考虑
图片解码

对不同格式的图片,解码采用什么方式 ?

  • 应对策略模式对不同的图片格式进行在哪个阶段解码?


线程问题

阅读时长统计

怎么设计一个市场统计框架?
为什么要用不同的记录器,你的考虑是什么?

不同场景的分开记录

记录数据由于某种原因丢失,你是怎么处理的?
  • 定时写磁盘
  • 限制缓存条数写磁盘
记录上传器

关于延时上传的具体场景有哪些?

  • 前后台切换
  • 无网到有网的变化
  • 轻量接口捎带接口

上传时机的把握

  • 立刻
  • 延时
  • 定时

复杂页面设计

MVVM
RN数据流思想
系统UI更新的机制

反响更新

FaceBook的AsyncDisplay框架的预排版机制

客户端整体架构

业务之间解耦通信方式
  • openURL
  • 依赖注入



架构/框架

图片缓存
阅读时长统计
复杂页面结构
客户单整体架构分层

你可能感兴趣的:(iOS架构构/框架)