IOS 文件夹结构
版权声明:本文为博主原创文章,未经博主同意不得转载。
https://blog.csdn.net/MyGameZone/article/details/24494765
IOS文件夹结构
说明
这些仅仅是个人的总结,仅供參考,有什么不足的地方请指出,大家一起进步。
文件夹结构组成
一般来说,文件夹结构能够由下面几个子文件夹组成:
|- AppDelegate|- Macro
|- Models
|- Geneal
|- Hepers
|- Vendors|- Resources
AppDelegate
这个文件夹下放的是 AppDelegate.h和
AppDelegate.m,由于它们是整个App
的入口,所以这个文件夹下一般就包括2
个文件。
AppDelegate
|- AppDelegate.h|- AppDelegate.m
Macro
这个文件夹下放的是整个 App会用到的宏。宏的用途也分为好几种,如作为常量,作为消息,作为函数。
Macro
|- ConstantMacro.h
|- MessageMacro.h
|- VendorMacro.h
|- ImageNameMacro.h
|- UtilityMacro.h
...
//常量
#define PERSON_NUM 10
//消息
#define USER_MESSAGE_COLLECTION @”user_message_collection”
//第三方 AppKey
#define WEIXIN_KEY @”xxxxxxxx”
//有用宏
#define RGBColor(r,g,b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1]//图片名字
#define HOME_LOGO @”logo.png”
Models
这个文件夹下放的是和数据相关的
Model 文件Models
|- PersonModel.h
|- PersonModel.m
|- HotelModel.h
|- HotelModel.m...
//PersonModel.h
@class IdCard;
@interface PersonModel : NSObject
@property (nonatomic, strong) NSString * name;@property (nonatomic, strong) NSNumber * age;@property (nonatomic, strong) IdCard *idCard;@endGeneal
这个文件夹下放的是一些 Views/Controllers/Categories等,这样划分层次更加清晰,个人建议还是依照树形结构来划分,这样某个模块出现错误能够高速定位。
General|- Views
|- HomeView|- AdView
...
|- DetailsView...
|- Controllers
|- HomeViewController|- DetailsViewController...
|- Categories
|- UIImageView+Downloader|- UIView+Sizzle
...
Hepers
这个文件夹下放的是一些助手性的文件,如计算经纬度、坐标转换、数据库管理,这些一般都是些通用的类或者函数。
Hepers
|- DatabaseHeper|- ClientHeper
|- FileHelper
...
//ClientHeper.h
@interface ClientHeper : NSObject
+ (ClientHeper *) sharedClient;
- (void)setDefaultCachePath:(NSString *)path;- (NSString *)defaultCacheSize;
- (void)cleanDefaultCache;
Vendors
这个文件夹下放的是一些第三方类库,如
WeiXinSDK,WeiBoSDK,ASI。Vendors
|- WeiXinSDK|- WeiBoSDK|- ASIHttp
...
Resources
这个文件夹下放的是图片、声音、文本等资源。
Resources
|- Images
|- Sounds
|- Databases
|- Html...
最后
唯一不变的就是变化,代码的规范化上没有什么对或者不正确,仅仅是统一的规范能够提高团队合作效率。我在这里附上google
的代码规范,希望大家能够一起进步,祝好运。
IOS 文件夹结构的更多相关文章
- Cocos2dx-3.1.1 冒险01----> 文件夹结构、新项目project创建并执行
windows开发环境:window7.vs2012.python2.7.6 Cocos2d-x 3.1.1的完整文件夹例如以下:比起曾经的2.x的版本号来说分类更规范了 watermark/2/te ...
- Cocos2d-x旧引擎文件夹结构
转自:http://blog.csdn.net/lwuit/article/details/7870395 Cocos2d-x的文件夹结构例如以下: 文件夹的详细结构介绍例如以下: Box2D:物理引 ...
- 如何组织较大项目的MVC文件夹结构
现在还用不到,拷贝下来备用,原文链接 2016 年 9 月 第 31 卷,第 9 期 ASP.NET Core - ASP.NET Core MVC 的功能切分 作者 Steve Smith | 20 ...
- 分析cocos2d-x在Android上的编译过程(1):cocco2d-x是怎样生成的Android的文件夹结构
当新建完一个cocos2d-x的项目后.进入到项目中的proj.android中,会看到例如以下的文件夹结构 在VS先把它编译,然后导入到Eclipse中,导入完后会看到多了几个文件 watermar ...
- Android SVN开发实战的文件夹结构呈现
svn有一个非常标准的文件夹结构,这是. 例如,该项目是proj.svn地址svn://proj/,然后该标准svn布局是 svn://proj/ | +-trunk +-branches +-tag ...
- 走进Linux01-磁盘分区与文件夹结构
近期学习Linux,首先安装系统,遇到了磁盘分区.之前仅仅知道Linux分区是从/(根文件夹)開始的,至于磁盘格式,多块盘怎样挂载全然不了解,系统的查询了一下Linux磁盘分区和文件夹结构,整理一下. ...
- Cocos2d-x 3.0新引擎文件夹结构
Cocos2d-x 3.0新引擎文件夹结构 2014年4月29日 Cocos2d-x 3.0学习 作为一个Cocos2d-x的菜鸟,我倒是挺愿意关注不同版本号之间的差别,Cocos2d-x 3.0自 ...
- Laravel 文件夹结构简介
表 1.1:Laravel 文件夹结构简介 文件夹名称 简介 app 应用程序的业务逻辑代码存放文件夹 app/Console 存放自定义 Artisian 命令文件 app/Http/Control ...
- Java之旅hibernate(2)——文件夹结构
Hibernate的jar最好是到官网上进行下载.下载最新的稳定的版本号.之后进行解压,以下我们介绍一下hibernate的包结构. 1. 包结构 我们能够看到包文件夹结构发生了变化.我以5 ...
随机推荐
- 在tomcat发布项目遇到的问题
今天从SVN上把系统导入本地发生了异常,问题如下: java.math.BigInteger cannot be cast to java.lang.Long 百度一番后发现是因为使用Mysql8.0 ...
- Day 18 函数之一
函数参数: 1.形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元.因此,形参只在函数内部有效.函数调用结束返回主调用函数后则不能再使用该形参变量 2.实参可以是常量.变量. ...
- 一个页面多个ng-app注意事项
1.一个页面会自动加载第一个ng-app 2.如果想启动其它ng-app,需要通过下列代码的红色部分来启动,此时一共启动了2个ng-app 3.特别注意:代码红色部分一定要放在最后,比如,不能放在蓝色 ...
- Codeforces 932 C.Permutation Cycle-数学 (ICM Technex 2018 and Codeforces Round #463 (Div. 1 + Div. 2, combined))
C. Permutation Cycle time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- Java 界面编程【02】事件注册
聪明出于勤奋,天才在于积累.——华罗庚 对上次的三个问题的个人理解: 1) 程序首先是从main函数开始执行的,假设main 函数不是 static ,就要先实例化这个类,然后调用 main 方法,这 ...
- mac下安装pyQt4
1.首先安装QT,同时要有gcc 2.然后就是先安装sip,然后安装pyqt4 python configure.py -q /usr/bin/qmake-4.8 -d /Library/Python ...
- LINUX___的常用几个快捷键
linux下:ctrl-c 发送 SIGINT 信号给前台进程组中的所有进程.常用于终止正在运行的程序.ctrl-z 发送 SIGTSTP 信号给前台进程组中的所有进程,常用于挂起一个进程.ctrl- ...
- 4.【nuxt起步】-具体练习一个h5实例
目标地址:https://www.vyuan8.com/vyuan/plugin.php?id=vyuan_fangchan&module=fangchan&pid=10079& ...
- 在win7上安装visual c++ 2008 redistributable 发生错误error 1935
方案一.原来服务"Windows Modules Installer"被禁用了, 启用该服务后, 问题就解决了. 方案二. 1.点开始——在运行框里输入regedit,按回车键 ...
- [Algorithm] Write a Depth First Search Algorithm for Graphs in JavaScript
Depth first search is a graph search algorithm that starts at one node and uses recursion to travel ...