ios开发代码规范

代码规范很重要,一个良好的代码习惯要从一开始就养成

公共类和文件的设计

(网络请求类、数据库类、Model类、View类,Controller<根据流程图>、Handle类<数据处理>、公共头文件<宏、接口的.h{URL}、常量const{通知中心的名字、一些状态码、枚举、结构体}、全局配置(适配{屏幕适配、iOS系统适配}的宏、系统版本判断、颜色值{参考图片})>)

一、文件

1、项目文件必须使用一个有意义的名字。

例如:TestDownImages

2、任何文件的命名不要以中文命名。

3、文件的目录按以下结构

a、Document — 文档所在路径

b、Help — 帮助文件所在路径

c、图片等资源要放在单独的目录或组中 如:Images、Pic等。

d、Public文件夹,存放公共类和第三方类库,及工具类

Base文件夹,自定义的父类

Thirds文件夹,引用外部文件或某个单独的功能。例如:应用了第三方的json下载的功能,应该把所有的文件放在单独的Json组中。

Tools文件夹,自定义的工具类(网络请求、数据库类等),公共头文件(宏、接口的url、常量const{通知中心的名字、状态码、枚举、结构体等},全局配置文件(屏幕适配、系统sdk适配、颜色值、图片名字等))。

e、model、View或ViewController等文件可以按照功能或文件类型放在独立的组中。

二、注释

注释是一个程序必不可少的一部分,它起到帮助阅读的重要作用。

并且一定要写正确的注释。注释如果不正确比不写还可怕。

1、注释可以使用/*...*/和//两种注释符号,涉及多行注释时尽量使用 /*...*/。

2、对与一行代码的注释可以放在前一行或本行的结束,不允许放在下一行,更不能在一行语句的中间(虽然这不会导致程序出错)。

3、方法前面的注释应按下面的格式

/**

* @方法名称

* @方法描述

* @输入参数

* @输出参数

* @返回值

*/

4、不必每行都加注释,在段落间加注释要好于每行加。显而易见的代码加上的是无用注释,所以不要加。

三、代码的排版

程序员在代码的编排上必须规范,如果排版格式混乱,别人就很难看懂你写的是什么,这将发费很多不必要的时间。

1、代码的缩进应使用空格,且以两个字符为单位。不能使用制表符(tab)。

2、每行的长度最多不得超过100个字符

以15寸Macbook Pro的大小,每行100个字符时能最大化地同时容下编辑器和iPhone模拟器,

通过 “Xcode => Preferences => TextEditing => 勾选Show Page Guide / 输入100 => OK” 来设置提醒

3、大括号‘{}’的使用,最后一个括号在源程序中要单独占一行。

例如:

for(int i = 0; i < 10; i++) {

}

4、空格的使用

a、关键字和表达式之间要有空格

如:if(i = 0; i < 10; i++)

b、单目操作符不能与操作数分开

如:!a

c、除,外其他的双目操作符应与操作数分开

如:i = i + 1;   if(a > b)

d、.h中协议<>前面要有一个空格。

e、成员声明时,类型与变量之间至少有一个空格,*号要靠近变量。

f、@proprety()里面,号紧跟前一个变量,与后一个变量之间留一个空格,()外先留一个空格再声明属性。

g、方法的+、-后面留一个空格。

h、方法的返回类型与*之间留一个空格。参数中返回类型与*之间留一个空格。

i、在多参数方法中,每个参数后面都有一个空格。

5、每行只能有一个语句

例如:NSInteger row = [indexPath row];

NSString *imgurl = [self.list objectAtIndex:row];

NSURL *url = [NSURL URLWithString:imgurl];

6、空行

a、.h中的空行

import与interface之间加空行

成员变量与属性间, 属性与方法间 加空行

不同类型成员变量间, 不同类型的属性间,不同类型的方法间 加空行

b、.m中

延展与implementation之间加空行

implementation与方法实现间加空行

方法与方法实现间加空行

方法内不同的逻辑代码块之间加空行

四、命名规范

1、保留字

o-c中保留字或关键字不能用于命名。

2、方法

a、方法的名称应全部使用有意义的单词组成,且以小写字母开头。多单词时,后面的单词首字母大写(驼峰命名)。参数有别名时,参数别名与参数名一致,

但参数名前缀以_。参数别名与前一参数保留一个空格。参数无别名时,以有意义的字母命名。

例如:-(NameValue *) initWithId:(int)theId andName:(NSString *)theName;

3、变量

a、变量的名字要有意义,其他人能很容易读懂其代表的意义。变量名可以采用同义的英文命名,可使用几个英文单词,第一个单词首字母小写,其他的单词首字母大写。

如:NSString  *userName;

b、对于一些特殊类型的变量,命名时要带上类型。

如、NSArray  *cityArray;

c、对于控件命名时,后缀要带上特定的控件名。

UILable  *userNameLable;

d、私有的实例变量前加一个下划线

如:_myPrivateValue;

4、常量

a、避免在程序中直接出现常数,使用超过一次的应以宏定义的形式代替

b、常数的宏定义应与它实际使用时的类型一致。

c、常量的命名应该能表达出它的用途,并且用大写的字母表示。

d、一些常量前加特殊前缀,可以作为不同常量的区分。

5、类

a、所有的类名,接口名都要以大写字母开头,多单词时后面的单词的首字母都大写。类,接口名必须是有意义的。

c、继承自UIView的类以View结尾,如:imageView。继承自ViewController的类以viewController结尾 如:imageViewController

五、修改规范

1、新增行前后应有注释说明

//修改人   修改时间   修改说明

新增的代码

//修改结束

2、删除代码项的前后应有注释

//修改人   修改时间   修改说明

删除的代码(将代码注释掉  并不是去掉)

//修改结束

3、修改代码以注释旧代码新增新代码的方式进行。

六、嵌套语句的使用规则

在程序中使用嵌套语句,一定要使嵌套语句的层次结构清晰明了。不能

让人看了半天还分不清你的层次,弄清你想要表达的意思。

1、if...else..条件语句的使用

a、判断的结构要合理

例如:if(a)

.......(有很多行代码)

else

{

......(只有一行代码)

}

如上的代码就不是很合理,可以修改为如下写法

if(!a)

......(只有一行代码)

else

.......(有很多行代码)

b、嵌套的if条件不要太多

例如:if(a)

if(b)

if(c)

......(还有很多if条件)

else

{}

else

{}

else

{}

如上代码有好多层的if条件判断的嵌套,给人的感觉就是太乱,而且不

太容易分清判断的到底是什么。那么就要把减少嵌套的语句,将嵌套的

语句方法化或者做其他处理。

时间: 2024-11-03 21:51:09

ios开发代码规范的相关文章

iOS 开发代码规范有哪些

对于刚刚入门ios的同学来说,iOS 开发代码规范是很重要的知识的,这里就给大家简单总结了一下. 一.工程规范 1.功能分类 根据所做功能的不同,分为不同的功能模块,比如登录模块,首页模块,个人模块等,根据不同的功能,代码必须要放在不同功能的文件夹下. 2.代码文件分类 不管是MVC模式,MVVM模式,或是其他设计模式,在不同的功能模块下,视图控制器(Controllers),视图(Views),模型类(Models),也必须要分别存放. 3.第三方库分类 工程中会经常使用第三方库,在引入第三方

IOS开发-代码规范

代码风格的重要性对于一个团队和项目来说不言而喻.网上有许多 Objective-C 的代码风格,但这份简洁而又最符合苹果的规范,同时有助于养成良好的代码习惯,也是我们团队一直遵循的代码风格. 写法没有对错,只是一种规范.各有各的一种规范,仅供参考. # 纽约时报 移动团队 Objective-C 规范指南 这份规范指南概括了纽约时报 iOS 团队的代码约定. ## 介绍 关于这个编程语言的所有规范,如果这里没有写到,那就在苹果的文档里: * [Objective-C 编程语言][Introduc

iOS开发代码规范(通用)

例子: MFHomeViewController View: 使用View做后缀 例子: MFAlertView UITableCell:使用Cell做后缀 例子: MFNewsCell Protocol: 使用Delegate或者DataSource作为后缀 例子: UITableViewDelegate UI控件依次类推 3> 私有变量 小驼峰式命名:第一个单词以小写字母开始,后面的单词的首字母全部大写 例子:firstName.lastName 以 _ 开头,第一个单词首字母小写 例子:N

iOS团队开发代码规范

iOS 开发代码规范 1.命名 https://github.com/Chinamobo/iOS-Team-Norms/blob/master/CodeStyle.md#naming-basic-principle https://github.com/foxsofter/ios-code-style https://github.com/andy0323/iOS-Code-Specification 新建.h,.m文件时,文件名称应与

iOS软件代码规范

在梳理团队开发流程,收集相关流程资料时,在百度文档上发现的一篇iOS软件代码规范文档:写的非常完善,具有很强操作性.百度上下载时花了一个下载币,现和大家共享.下载地址:http://download.csdn.net/detail/smallhorse87/8660881 在此基础上,我添加了客户端上线前收尾工作的备忘事项: APP中是否装备了必备功能:统计,日志收集及发送,版本检测以及自动更新,用户反馈: 确保产品经理和设计师体验过了APP,签字画押.确保APP体现了产品和设计的构想,没有理解

Android开发代码规范(转)

Android开发代码规范 1.命名基本原则    在面向对象编程中,对于类,对象,方法,变量等方面的命名是非常有技巧的.比如,大小写的区分,使用不同字母开头等等.但究其本,追其源,在为一个资源其名称的时候,应该本着描述性以及唯一性这两大特征来命名,才能保证资源之间不冲突,并且每一个都便于记忆. 对于理解应用程序的逻辑流,命名方案是最有影响力的一种帮助.名称应该说明“什么”而不是“如何”.命名原则是:使名称足够长以便有一定的意义,并且足够短以避免冗长.唯一名称在编程上仅用于将各项区分开.以下几点

北京天宇联科技有限责任公司—T语言Ios开发命名规范

T语言(ttyu software language )是一种通过定义的方式自动生成原生态的android.ios和自适应各浏览的h5的web页面的三合一的软件开发语言.T语言是一种简单的,易于使用的开发软件.T语言运用TC简单开发. TC简单开发是国内首款免费多线程的图形界面脚本制作开发工具软件,支持中英文双语言编写脚本程序,综合脚本开发工具,可以说TC开脚本界先河,是免费脚本开发制作工具的首选.通过制作脚本,可以让TC简单开发代替您的双手,自动执行一系列鼠标键动作.能陪伴你每日每夜的脚本开发

web前端开发代码规范

1. 引言 对于一个多人团队来说,制定一个统一的规范是必要的,因为个性化的东西无法产生良好的聚合效果,规范化可以提高编码工作效率,使代码保持统一的风格,以便于代码整合和后期维护.本文档主要描述web项目开发中所使用的html.css.JavaScript等规范,请参与开发相关人员遵循,同时也请各位日后进行补充完善. 2. HTML/CSS规范 2.1 浏览器兼容 根据业务要求而定: 主流程测试:Chrome 30+.IE9+: 完整测试: Chrome 21.IE8+.360浏览器.微信webv

JAVA技术开发规范(4)——JASMP平台的开发代码规范

4.关于代码规范 代码规范对程序员的重要性: 1.在软件开发生命周期中,有80%的时间是用在维护上 2.几乎所有的软件维护者都不是创使人 3.迭代式开发,必须要有清晰.可读性强的代码,以便于快速迭代 4.敏捷开发时,对应文档的输出不是减少,而是更加实用,因此,可交付的易读的代码更为重要了 5.协同协同,必需确保在编码时遵循统一的规范 编码规范是必需的,每个参与人必需严格遵循该规范进行编码. 4.1.命名规范 基本原则: 1.采用英文全称进行命名 2.保持各层级名称基本统一 3.命名英文单词用全称