为了账号安全,请及时绑定邮箱和手机立即绑定

iOS开发-极致优化

标签:
iOS

我们遇到的很多项目并不是从零开始的,更多的是需要产品迭代和更新的!在项目业务趋于稳定的时候,iOS攻城狮闲的xxx!
这个时候,可以考虑优化和完善项目了!!!

项目

1、结构和架构(有的是架构,小项目叫结构)

结构 : 1、文件目录分类  2、第三方库管理

文件目录分类
了方便管理,最好将Xcode中的项目展示目录与实际的存储目录保持一致。
此外,一般按业务模块分类,一级目录可以按照MVC格式,也可以按照业务模块划分

ps:
用最普遍的Model View Controller架构举例:
以一个基础的电商项目来解释,4个tabbarItem对应着四大模块,首页、分类、购物车、个人中心,往下每个还可以细分为MVC+Session层
按项目架构来分

ps:
最外层为Model、View、Controller、Session层,内部才是业务模块
这一块无需多言,两者配合使用即可

第三方库管理
管理方面有三种方式:
1、手动管理
2、手动维护各种第三方库,适合于已经趋于稳定、极少Bug的三方库
3、CocoaPods
4、Carthage

这里很推荐使用 Carthage,对项目的入侵性很小,并且是中心化管理,可以尝试一下,如果其他需求,请自便!!

项目架构 - 大项目 - 推荐使用 MVVM 结构

项目架构

ps:
项目逻辑基本都围绕了一条主线时,我们采用MVC已经可以很好的满足我们的需求,但是当业务逻辑日渐复杂的时候,我们单纯的采用Model View Controller这种编程模式已经不能很好的将业务逻辑与代码分离开,也就是逻辑解耦;
为了更好的将ViewController解耦,产生了Model View ViewModel这种编程模式,ViewModel层其实做了一层Model与ViewController中间的桥接,有利有弊,该模式会产生很多胶水代码,但是配合响应式编程框架(如 ReactiveCocoa或者RxSwift),可以做到最大程度的解耦。适合与自己实际项目业务复杂程度的模式才是好的编程模式。

未完待续!写不下去了!!



作者:guojie
链接:https://www.jianshu.com/p/fc4f892d49e5


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消