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 虽然这篇文章的 ...
随机推荐
- 瞬发大量并发连接 造成MySQL连接不响应的分析
http://www.actionsky.com/docs/archives/252 2016年12月7日 黄炎 目录 1 现象 2 猜想 3 检查环境 4 猜想2 5 分析 5.1 TCP握手的 ...
- “应用程序无法正常启动(oxc000007b)”解决方案
- 利用反编译学习Android
自从2014年底到2015年中,全民创业的热潮就已经席卷全国了,一大批新的创业公司在北上广萌芽,也造成了大量的开发人员需求.扯远了,今天不谈创业潮,聊聊如何通过反编译学习Android.本文只是个人对 ...
- redis参数配置
redis.conf配置文件 配置项 值 说明 slave-read-only yes slave是否只读 slave-serve-stale-data yes 当slave与master断开连接,s ...
- nginx/iptables动态IP黑白名单实现方案
nginx/iptables动态IP黑白名单实现方案 一.手动封IP步骤 1.Nginx手动封IP 1.获取各个IP访问次数 awk '{print $1}' nginx.access.log |so ...
- swfit各种Function表现形式
//: Playground - noun: a place where people can play import UIKit //多返回值函数 func countss(string: Stri ...
- Robot framework 引入 Selenium2Library 类库:
在用robotframework-selenium2library做web自动化测试时候,首先要将Selenium2Library导入到Test Suite中,在导入Selenium2Library时 ...
- css hover对其包括的元素进行样式设置
<ul class="icon-down-single-arr-li"> <li> <a href="javascript:void(0)& ...
- SQL注入基础入门
一般的WEB架构 SQL注入成因: 用户开启浏览器并连接http://www.xxx.com.位于逻辑层的Web服务器从文件系统中加载脚本将其传递给脚本引擎,脚本引擎负责解析并执行脚本. 脚本使用数据 ...
- POJ3009 Curling 2.0(DFS)
迷宫问题求最短路. 略有不同的是假设不碰到石头的话会沿着一个方向一直前进,出界就算输了.碰到石头,前方石头会消失,冰壶停在原地. 把这个当作状态的转移. DFS能够求出其最小操作数. #include ...