无线客户端框架设计(3):基类的设计(iOS篇)
2023-03-20 14:45:17 时间
本文代码:YoungHeart-Chapter-03.zip
没有基类的App都不是好App。
因为iOS使用的是mvc模式的开发模式,所以,业务逻辑基本都在每个页面相应的ViewController中。这些页面有很多相同的逻辑,所以,我们有必要设计一个BaseViewController基类,将这部分共有逻辑抽象到基类中。
具体是哪些相同的逻辑呢?
1)重新规划页面的生命周期——第4篇文章会专门介绍.
2)iOS处理内存警告——在讲到内存优化的时候,会介绍。
3)作为跳转器的目标页,接收传递来的参数——在讲到导航器的时候,会介绍。
4)页面初始化时,需要清除控件上的假数据——在讲到UI框架设计的时候,会介绍。
5)进度条的加载和隐藏——在讲到进度条的时候,会介绍。
6)显示提示信息——在讲到进度条的时候,会介绍。
7)网络请求的失败情况的统一处理——在讲到网络请求的时候,会介绍
8)IPhone适配——在讲到适配器的时候,会介绍。
纵观以上8点,我们发现,有些是框架级别的,比如1、2、3,而4-8,则和具体的App相关。换做其它App时,4-8的实现可能是不一样的。所以我们有必要在MyLib项目中建立一个顶级的BaseViewController基类,包括1、2、3的实现。而在MyApp项目中,建立AppBaseViewController基类,让它继承自BaseViewController,并实现4-8的逻辑。在MyApp项目中的所有ViewController,都继承自AppBaseViewController。
以上8点,会在接下来相应的章节进行介绍,我们会在具体的章节添加相应的基类方法。而在本文,我们的基类,暂时是空的。
相关文章
- 浅说Synchronized的底层实现原理
- 为什么要让你的代码尽可能简单
- 聊聊指标异常检测与等待事件分析的相互补充作用
- 作为一名后台开发人员,你必须知道的两种过滤器
- 团队里的妹子让阿粉跟她说说怎样写出好的代码
- 一篇带你了解一下CQRS模式
- 分布式 PostgreSQL之Citus 架构
- 封杀两年后,Github恢复伊朗开发者使用权!
- 设计模式,一看就懂的桥模式,解耦可变量与主体逻辑
- 不想加班开发管理后台了,试试这个 Java 开源项目吧!
- 微服务模式下如何实现多模块并行构建发布
- 详解数据结构二叉树及其代码实现
- 迁移到Kubernetes对DevOps和DataOps有哪些好处
- 在 Kubernetes 上运行 Pgpool-Il 实现 PostgreSQL 查询(读)负载均衡和连接池
- QQ PC版9.4.2更新:新增AI降噪 语音、视频通话更清晰
- Typescript代码整洁之道
- 2021年Web开发的7大趋势
- GitHub发布2020年度报告:开发者数量超5600万
- 面试官:关于Spring就问这13个
- 电脑狂、理论家、情报员……你是哪种类型的软件工程师?