iOS开发规范

好的代码习惯可以给人一种艺术和美的体验

代码规范文件或项目开发文档,可以在团队开发中发挥意想不到的作用,也是项目交接或项目交流不可或缺的部分。

今天我把我的项目开发文档及规范分享出来,不喜勿喷,欢迎指正。

第一步:在项目中新建一个h头文件。

第二步:在头文件中导入项目代码需要服从的设计规范。(以注释的形式写文档)一下是我写的部分规范,可供参考:

/*

*  项目开发规范

 *  @param 1、项目使用MVC的设计模式来开发,统一文件管理。

 文件夹(中文导航栏名称或模块名称):Controller文件夹、View文件夹、Model文件夹。

 *  @param 2、全部的--控件--通过使用继承来开发,对基础控件使用BaseUI来初始化,便于技术变更的维护。

 基础类:BaseView设计和添加基础方法,所有用到的UIView继承BaseView来初始化。(存于独立管理模块)

 *  @param 3、全部的--第三方SDK--应用通过本地封装-集成的方式来使用,不可以直接使用第三方的控件和方法,便于维护和后期调整。

 SVP或下拉刷新的第三方应用: 对调用的方法先本地封装,再通过本地封装的方法来使用,后期修改本地封装的地方来调整。(存于独立管理模块)

 *  @param 4、统一封装--公共类方法--的处理,通过类方法的方式封装管理,便于维护和后期调整。

 对复用性强的独立方法或属性:通过封装来调用,如设置可变颜色,日期获取、字符串校验等。(存于独立管理模块)

 *  @param 5、统一封装--颜色值--的处理,分开管理背景色和文字颜色。便于维护和后期调整。

 颜色值的处理:通过注释说明 前缀+颜色名称+类型名称 的规范来设置。

 如:注释:白色背景色 宏名称:AY+Back+White+Color +值。(存于独立头文件)

 *  @param 6、统一封装--接口地址--的处理,分开服务地址和数据地址。便于维护和后期调整。

 接口地址的处理:通过注释说明 前缀+微服务名称+接口名称+类型名称 的规范来设置。

 如:注释:用户登录接口 宏名称:AY+User+Login+URL +值。(存于独立头文件)

 *  @param 7、统一对象--命名规范--的处理,必须使用驼峰格式,便于识别和查找。

 文件夹命名:外侧文件夹使用纯英文,内层文件夹使用英文+(中文模块名称或导航栏名称)。

 如:Login(登录)。

 类对象命名:通过注释说明(在h文件头部添加注释 在界面流程复杂的控制器中需要说明界面流程步骤) 前缀+类名称+级别名称+类型名称 的规范来命名。

 如:注释:用户登录界面 类名称:AY+Login+Home+Controller。

 全局对象命名:通过注释说明 对象名称+类型名称 的规范来命名。

 如:注释:用户手机号输入框 对象名称:userPhoneTextField。

 方法命名:通过注释说明 方法作用对象名称或作用类型名称+方法名称+方法参数 +With+方法参数 的规范来命名。

 如:注释:检测字符串是否为手机号 对象名称:string+Check+Is+IDCard。

 宏定义命名:通过注释说明 前缀名称+属性名称+定义名称+类型名称 的规范来命名。

 如:注释:微信支付成功通知 宏定义名称:AY+WeChat+PaySuccess+Notification。

 图标的命名:图片组名称+属性名称+图片名称+类型名称 的规范来命名(中间添加下划线)。

 如:user_icon_login_image。

 *  @param 8、统一管理--图片存放--的处理,非必要的图标或图片:必须分组存放在Assets中管理。便于管理、查找或修改。

 通过模块化的方式:在Assets添加图片组,图标的命名:组名称+属性名称+图片名称+类型名称 的规范来命名(中间添加下划线)。

 如:user_back_login_cell。(图片名称会被代码方法来识别,尽可能不使用中文)。

 *  @param 9、统一管理--视图间距--的处理,通过宏定义处理间距,间距大小避免计算误差必须使用4的整数倍设置。便于管理、查找或修改。

 间距命名:通过注释说明 前缀名称+属性名称+作用名称+间距名称 的规范来命名。

 如:注释:主页底部视图左右间距-12 间距名称:AY+Home+Cross+Space+12。注释:主页底部视图上下间距-24 间距名称:AY+Home+Vertical+Space+24。

 *  @param 10、通知名称、第三方Key、第三方ID、屏幕宽高等,必须使用宏定义。

*/

第三步:对项目中的文件夹和对应文件做开发说明。为开发文档。一下为我的部分开发说明,可供参考:

/*

* Home(首页)文件夹--首页模块

* Controller文件夹

   *更多酒店文件夹--首页新增共享酒店--更多酒店

      *  @param HomeMoreHotelVController--首页--更多--共享酒店

      *  @param HomeHotelListController--首页--更多--共享酒店--嵌套在HomeMoreHotelVController的酒店列表

   *首页搜索文件夹--首页酒店搜索

      *  @param HotelSearchViewController--首页导航栏搜索酒店--酒店搜索界面

      *  @param SearchHotelListViewController--首页--开始搜索按钮--多条件查询酒店

   *首页主页文件夹--首页主界面

      *  @param HomeHomeVController--首页主页

   *酒店详情文件夹--酒店详情、下单、评价列表

      *  @param HotelPayOrderVController--酒店下单--创建订单界面

      *  @param HotelDetailJudgeVController--酒店详情--酒店评价视图--评论列表界面

      *  @param HotelShareViewController-酒店详情界面--分享酒店界面--(被弃用)

      *  @param HotelInformationVController--酒店详情界面--分块设计详情

   *更多城市文件夹--首页主界面

      *  @param HomeMoreCityVController--首页--更多--开放城市

* Model文件夹

  *  @param HotelShowModel--酒店数据模型--对应HotelShowTableCell

  *  @param HotelRoomModel--酒店详情--酒店客房数据模型--对应HotelRoomTableCell

  *  @param CityShowModel--首页城市数据模型--对应HomeCityCollectCell

  *  @param HotelAskModel--酒店详情--酒店评价数据模型--对应HotelAskTableCell

  *  @param RoomhotelFacilityVOSModel--房间详情--房间参数数据模型--嵌套在HotelShowModel和HotelRoomModel中

* View文件夹

  *Cell文件夹--首页设计的cell

     *  @param HotelShowTableCell--首页--酒店搜索列表cell--对应在SearchHotelListViewController

     *  @param HotelRoomTableCell--酒店详情--酒店客房cell--对应在HotelDetailRoomListVController

     *  @param HotelAskTableCell--酒店详情--酒店评论cell--对应在HotelDetailsAskShowView

  *Cell_xib文件夹--首页设计的cell-带xib设计

     *  @param HomeHotelCollectCell--首页新增酒店--酒店列表视图--嵌套在HomeHotelListView中cell

     *  @param HomeCityCollectCell--首页开放城市--开放城市视图--嵌套在HomeOpenCityShowView中cell

     *  @param HomeRoomCollectionCell--首页精选酒店视图--HomeHistoryShowView中cell

     *  @param WSLWaterCollectHeaderView--瀑布流布局头部和尾部视图

     *  @param AskImageCollectionCell--酒店评论--评论图片cell--嵌套HotelAskTableCell

  *酒店详情视图文件夹--酒店详情界面的分块设计视图

     *  @param HotelDetailsHeaderView--酒店详情视图--头部轮播、信息、位置导航、电话视图

     *  @param HotelDetailsRoomListView--酒店详情视图--房间列表视图视图

     *  @param HotelDetailsWordShowView--酒店详情视图--酒店介绍视图

     *  @param HotelDetailsAskShowView--酒店详情视图--评论列表视图

     *  @param ShowHotelRoomDetailsView--展示酒店房间详情信息视图--弹框

     *  @param OrderPayChioceView--订单支付--支付方式选择弹框

     *  @param HotelDetailsARecommendHotelListView--订单详情--推荐酒店列表视图

     *  @param RoomLoadTimeView--酒店下单--查询房间满房状态--日期选择视图

  *首页视图文件夹--首页主界面的分控件

     *  @param HomeNavSearchView--首页主页--导航栏搜索视图

     *  @param HomeOrderShowView--首页主页--酒店下单选择视图

     *  @param HomeHistoryShowView--首页主页--精品客房展示视图

     *  @param HomeOpenCityShowView--首页主页--开放城市展示视图

     *  @param HomeProviceHotelView--首页主页--新增共享酒店视图

  *酒店搜索文件夹--酒店搜索界面的分控件

     *  @param SearchHotelSubView--酒店搜索界面--搜索框视图--(SearchHotelListViewController城市、筛选)

     *  @param SearchSiftView--酒店搜索搜索框视图--筛选条件视图(SearchHotelSubView筛选)

 */

若转载,请注明来源。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,384评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,845评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,148评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,640评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,731评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,712评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,703评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,473评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,915评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,227评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,384评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,063评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,706评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,302评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,531评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,321评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,248评论 2 352

推荐阅读更多精彩内容