ios之编码规范具体说明
iOS代码规范:
所有代码规范所有遵循苹果sdk的原则,不清楚的请訪问苹果SDK文档或下载官方Demo查看。
1、project部分:
将项目中每一个功能模块相应的源文件放入同一目录下,使用虚拟目录。
引用的.a和相关的文件。独立使用目录存放。并标明是SDK
2、类:
命名:首字母大写,其后每一个单词首字母大写,类文件的名字必须与类中基本的@interface类名字一致。(例:RootViewController。PersonInfo)
category和protocol能够放在独立文件里,或放在某个类之前。
3、代码:
变量:全部变量命名遵循驼峰规则,变量名需保证见名知意。(例:NSString *personName = @"123",BOOL isTrue = YES)
除此之外还需满足下面条件:
暂时变量以小写字母开头。其后每一个单词首字母所有大写,尽量不使用数字和下划线。
全局变量下面划线开头。禁止使用数字,尽量不在中间使用下划线。
4、数据类型:
能使用Objective-C的数据类型,尽量使用Objective-C的数据类型,切忌交叉使用(哪怕你知道那原本就是一个类型)。
5、属性、方法
全部属性名不能下面划线开头,尽量不使用单词简写。(例:
@property (nonatomic,strong)NSString *orderNumber;
@property (nonatomic,strong)NSMutableDictionary *studentInfo;
)
方法名必须以小写字母开头,每一个參数描写叙述必须明白的描写叙述后面的參数,每一个形參必须确切的表示參数的作用。严禁出现 - (id)init:(NSString *)a b:(NSString *)b作此类的方法名。
6、语句、括号
全部语句必须遵循左对齐原则,括号位置需保持一致。
换行前注意语句对齐,嵌套语句中换行和括号必须依次缩进。
7、 凝视、标记
每一个不够明白的变量和属性之前。必须加上相关凝视。
每一个略微复杂的方法。必须加上对功能的描写叙述。
运行到关键步骤时。尽量使用语句提示其作用。
出现关键性的流程选择时,使用凝视提示。
同一个类中出现其它引用。出现独立功能模块时。加入mark。
随意待优化、未完好、未測试、不确定的代码。须要加入mark。
8、宏、静态全局变量
尽量写在独立的文件里。
简短的宏命令尽量使用大写,稍长的能够大写开头,其后使用小写,但尽量加入下划线加以区分。
大量反复使用的数值尽量使用宏,嵌套层数过多、使用频率较高、格式固定无需较大更改的方法尽量使用宏。
经常使用设备信息、屏幕尺寸、固定參数尽量使用宏,接口地址、路径、固定參数可使用宏或全局静态变量。
ios之编码规范具体说明的更多相关文章
- 【安全开发】IOS安全编码规范
申明:本文非笔者原创,原文转载自:https://github.com/SecurityPaper/SecurityPaper-web/blob/master/_posts/2.SDL%E8%A7%8 ...
- iOS开发 编码规范
转至 http://www.cnblogs.com/celestial/archive/2012/06/30/2571417.html 编码规范 一.文档结构管理 1.建立Libraries文件夹 ...
- iOS 注释的5要3不要和编码规范的26个方面
注释 代码注释,可以说是比代码本身更重要.这里有一些方法可以确保你写在代码中的注释是友好的: 不要重复阅读者已经知道的内容 能明确说明代码是做什么的注释对我们是没有帮助的. // If the col ...
- Objective-C编码规范:26个方面解决iOS开发问题
介绍 我们制定Objective-C编码规范的原因是我们能够在我们的书,教程和初学者工具包的代码保持优雅和一致.即使我们有很多不同的作者来完成不同的书籍. 这里编码规范有可能与你看到的其他Object ...
- iOS编码规范参考
目录 注释 1.1 多行注释 1.2 单行注释 1.3 函数的注释 命名 2.1 常量的命名 2.2 函数的命名 2.3 变量的命名 2.3.1 成员变量 2.3.2 公 ...
- [iOS翻译]Cocoa编码规范
简介: 本文整理自Apple文档<Coding Guidelines for Cocoa>.这份文档原意是给Cocoa框架.插件及公共API开发者提供一些编码指导,实质上相当于Ap ...
- Objective-C开发编码规范【转载】
概要 Objective-C是一门面向对象的动态编程语言,主要用于编写iOS和Mac应用程序.关于Objective-C的编码规范,苹果和谷歌都已经有很好的总结: Apple Coding Guide ...
- HTML编码规范
HTML编码规范 1 前言 HTML作为描述网页结构的超文本标记语言,在百度一直有着广泛的应用.本文档的目标是使HTML代码风格保持一致,容易被理解和被维护. 2 代码风格 2.1 缩进与换行 [强制 ...
- 资料推荐--Google Java编码规范
之前已经推荐过Google的Java编码规范英文版了: http://google-styleguide.googlecode.com/svn/trunk/javaguide.html 虽然这篇文章的 ...
随机推荐
- from: Maven实战(九)——打包的技巧
from : http://www.infoq.com/cn/news/2011/06/xxb-maven-9-package 要点: 1. 打出可执行的jar包, 2. 自定义打包
- Command terminated by signal 11
Command terminated by signal 11可能的情况之中的一个是数组越界.你在訪问不被同意的内存空间.
- Android 使用意图播放本地视频
Android播放视频的方式有三种: 一.使用意图播放,调用本地安装的播放器,选择一个进行播放. 二.使用VideoView播放(VideoView事实上是对MediaPlayer的封装,使用起来非常 ...
- mysql下监测数据库语句creating sort index时间过长的问题
在一张单表5000W数据上进行数据查询时传入两个单列索引条件,进行组合索引查询时,如果最后有order by id排序,与去除该排序,性能差距接近两个数量级 结论:在使用列的默认排序时,不应该再ord ...
- ZF-net
ZF-net 摘要: 1.这篇文章的motivation 是 :CNN性能良好,可是我们不知道它为何性能良好.也不知道它怎么能够被提高? 2.本文介绍了一种新方法实现中间层和分类器的可视化 3.採用消 ...
- 地图之CLLocationManager的使用 定位功能使用
1.iOS8曾经使用CLLocationManager 1.导入头文件 <CoreLocation/CoreLocation.h> 2.创建位置管理者 CLLocationManager ...
- Spring技术笔记(一)
一.控制反转(IoC)&依赖注入(DI) 1.控制反转: 所谓的控制反转就是应用本身不负责依赖对象的创建及维护, 依赖对象的创建及维护是由外部容器负责的. 这样控制权就由应用转移到了外部容器, ...
- Centos 7 远程桌面客户端
在centos下面要远程连接windows,有人说用rdesktop,但是好像centos 7没有,对从源代码编译也不大感兴趣. 幸好还有人提醒, https://geekblood.com/2014 ...
- U-Boot中关于TEXT_BASE,代码重定位,链接地址相关说明
都知道U-BOOT分为两个阶段,第一阶段是(~/cpu/arm920t/start.S中)在FLASH上运行(一般情况 下),完成对硬件的初始化,包括看门狗,中断缓存等,并且负责把代码搬移到SDRAM ...
- mongodb的启动参数--quiet
”mongo群友在群里问了个问题,问的是--quiet启动参数如何用的? 如何理解安静的输出?“ 看到这个问题,之前看过--quiet这个参数,没有认真研究过,也没在生产中使用过. 在mongodb启 ...