(三)项目模块划分以及资源管理

项目模块划分以及资源管理

在开始前,我先讲讲我在项目中习惯性的模块划分。

我主要是以业务线划分模块的,比如底部标签栏上我们一般会有”首页“,”消息“,”我的“之类的。这样我便会分成”首页“,”消息“,”我的“三个模块。随着在首页模块push到后续的界面,代码文件层级也进行层层嵌套,用于放置数据的model和图片的资源也一一对应层级。MVC中Model和Controller就这样用两个文件夹进行隔离。关于view我们便无需另外再建一个文件夹进行隔离,直接放在Controller文件夹中,也方便查看。如下图:

这里写图片描述

这里写图片描述

这里写图片描述

早期的模块划分基本以功能模块划分,如:

这里写图片描述

这个看上去就和android的开发类似了,英文命名,单独功能做为一个模块。很明显的,这种方式不如我上边的简明易懂,只能大致知道功能是什么,但却不清楚是应用到哪的。这种功能模块适用于一些公用的,团队中都能使用到的,比如我放在common文件夹中的一些公用的工具类。

运用中文,并随着app的界面一层层的嵌套深入自然是逻辑更清晰些。

在团队开发时,成员便可以挑选对应的首页或者消息等模块进行整个模块的完整开发。包括Controller,model,图片资源都有自己单独的文件夹区域,不会和别的成员有交叉。图片的命名也能规避重复,根据命名也能知道属于哪个页面。

中文的文件夹名简明易懂,如果成员之间出现需要修复对方bug,添加额外功能等都可以根据文件夹的层级快速查找到相关的代码位置。这个层级深入就和android的包路径一个道理。

之所以能够用中文进行这样的模块划分,也确实是因为苹果的xcode做的好,能很好的兼容中文。成熟的MVC模式开发支持,能将数据,界面,以及交互完美的独立出来。不用再像以前开发那样将功能模块堆叠到一起,app做大了之后自己都不清楚一些功能模块在哪了,更别提去找成员的代码。这种模式分层经个人测试确实十分好用,希望能对需要之人有帮助。

为了后续的开发进行,我现在便先生成几个功能模块,添加一点图片资源。
这里写图片描述