iOS:怎么开发一个天气APP项目(三)降低Controller的耦合度(C去囊肿)

2017-01-14 10:06:05来源:http://www.jianshu.com/p/e347d213c659作者:SoolyChristina人点击

第七城市

传送门:
iOS:怎么做一个天气APP项目(一)获取数据
iOS:怎么做一个天气APP项目(二)搭建框架


前言

当自己项目功能越来越多时Controller会面临诸多问题:ViewController代码繁重、功能复杂、维护困难,整个工程寥寥几个ViewController就完成了整个项目的开发,每个控制器中都囊括了所有的页面布局、委托代理、网络请求、数据库操作和核心功能,这样的代码往往问题重重,修改起来牵一发而动全身,着实令人头疼。


这个时候C去囊肿势在必行了。


模型数据封装成类

将模型的实现的过程写到模型类里


这时只需在需要的地方调用-(instancetype)initWithDic:(NSDictionary *)dic;一个方法即可。


网络请求封装成类

这时只需要在Controller里写一句代码就足够,而不需要把请求数据的整个方法和实现都写在Controller里。
项目中的实例⤵️


//网络请求类 只需要在Controller里调用这个方法即可
GetCityWeather *weather = [[GetCityWeather alloc]initWithCityName:self.cityName];

自定义UITableViewCell时
创建Cell的过程抽到对应的类中
在cell里模型数据的setter方法中给cell的子控件赋值
其他

项目地址:github
项目过程中可能会遇到的问题:控制器之间传值




第七城市

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台