项目架构梳理
做了这么久的iOS开发,其实只是在努力工作做业务,并不了解自己写的东西。今天把项目的框架梳理一下,加深一下理解。
项目整体结构上面的图就是我们项目的整体结构了,就是很厉害的我超搭建的牛X框架。今天我来学习一下。
整体框架组成
分为Expand(扩展)、Mian(主要)、Resource(资源)和SDKFile(集成),还有Vender(第三方)这五个包组成(Appdelegate单独拿出来是为了方便查找,因为它下面只有两个文件,这里就不再单独说明了)。
1.Expand(扩展)
扩展中主要存放了一些项目需要的常用类。包括以下这些:
(1)category(分类)
分类中存放的就是我们的一些常用的类别文件,例如NSString的类别文件等。
(2)Const(常量)
这里存放一些常量文件。最常用的例如我们网络请求使用的url,创建一个文件统一管理,既方便查找,又能使代码更整齐。
(3)DataBase(数据库)
这个文件可根据实际情况添加。一般我们不会在前端存放过多的数据,很多时候用不到数据库大可不必使用这个文件。也有一些公司使用core data做本地数据的存储,性能也能媲美database。
(4)Macros(宏)
存放一些宏定义的文件。这个也很常用,比如我们经常会使用到获取屏幕宽高或者定义屏幕比例因子,还有其他一些常用的宏,都可以存放在这个文件夹下。
(5)Network(网络)
这个是我超对AFN做了一个二次封装,提供了一个统一请求接口类,这样我们的网络请求就可以统一管理了,省去了在每个controller写网络请求一堆代码的麻烦。我超还是很棒哒~
(6)Tool(工具类)
工具类里面主要放一些比较实用的小工具。比如一些方便的字符串校验还有好用的自定义小控件等。
2.Mian(主要)
主要里的内容就是我们按照业务模块分的几个包,再按MVC进行分层的主要业务和页面。大家都知道怎么写的,这里不多做介绍。
3.Resource(资源)
(1)Audio 顾名思义,其实就是存放一些必要的媒体文件的。
(2)Config 一些配置类的文件可以存放在这里
(3)Global 我们把一些全局用的文件存放在这里,例如pch和storyboard
(4)Image 里面就是我们的Assets文件,也不用多说
(5)JsHtmlCss 看名字也知道喽,就是一些html文件
(6)Plist info.plist以及日常用到的plist等文件
4.SDKFile(集成)&Vender(第三方)
我也不知道为什么要把他们分开,我觉得都是一样的哇~都是存放的一些第三方的东西。当然,使用cocoapods导入的不在这里,所以我认为这两个可以合并。
好啦,今天就到这里吧~