ios基础-编程规范
养成良好的编程习惯,是開始一门新语言的首要前提。
(一)文档结构规范
1.建立Libs目录,存放第三方库
2.建立Tools目录,存放自己封装的类库
3.建立ViewControllers目录,存放全部的ViewControl
4.建立Request目录,存放网络请求
5.建立Cell目录,存放列表item
6.在Supporting Files目录下建立Images、Music和Video等相关目录,分别存放图片、音频、视频等资源。
7.建立RootViewController首页,放在底层文件夹
8.建立Constant.h文件,放在底层文件夹,存放常量
范比例如以下:
(二)命名规范
1.常量名全大写,可用下划线分隔,如:MY_LOTTERY_ID
2.变量首字母小写,后面单词首字母大写,如myLotteryId
3.类名首字母大写,如@interface MyLotteryId:NSObject
4.命名时带上类型,如xxxTv,xxxView,xxxStr等
常见类型简写例如以下:
UIViewController:VC UIImage:Img UIImageView:Iv
UIView:View UILabel:Lbl UIButton:Btn
UINavigationBar:NBar UIToolBar:TBar UISearchBar:SBar
UITextField:Tf UITextView:Tv NSArray:Array
NSMutableArray:MArray NSDictionary:Dict NSMutableDictionary:MDict
NSString:Str NSMutableString:MStr NSSet:Set NSMutableSet:MSet
5.静态变量前面加s标示,如sLotteryId
6.普通实例变量前面加m标示,如mLotteryId
很多其它命名规范可參加苹果官方文档
(三)编码习惯
1.每一个文件前简要描写叙述该文件作用
2.类中功能模块用#pragma mark - 做好备注,方便查找和代码管理
3.NSLog測试完统一删除
4.程序中变量方法名,尽量用命名标示功能,无法标示的用凝视说明
5.在pch文件里做载入预处理和log自己主动去除设置
6.类代码行数尽量不超过300行,一个函数不超过100行,超过的考虑重构
7.创建Constant.h文件存放常量
ios基础-编程规范的更多相关文章
- iOS扩展——Objective-C开发编程规范
最近准备开始系统学习一个完整项目的开发流程和思路,在此之前,我们需要对iOS的开发变成规范进行更系统和详尽的学习,随意对编程规范进行了整理和学习.本文内容主要转载自:Objective-C-Codin ...
- JAVA基础语法:java编程规范和常用数据类型(转载)
JAVA基础语法:java编程规范和常用数据类型 摘要 本文主要介绍了最基本的java程序规则,和常用数据类型,其中侧重说了数组的一些操作. 面向java编程 java是纯面向对象语言,所有的程序都要 ...
- IOS开发-代码规范
代码风格的重要性对于一个团队和项目来说不言而喻.网上有许多 Objective-C 的代码风格,但这份简洁而又最符合苹果的规范,同时有助于养成良好的代码习惯,也是我们团队一直遵循的代码风格. 写法没有 ...
- iOS网络编程模型
iOS网络编程层次结构也分为三层: Cocoa层:NSURL,Bonjour,Game Kit,WebKit Core Foundation层:基于 C 的 CFNetwork 和 CFNetServ ...
- 中兴软件编程规范C/C++
Q/ZX 深圳市中兴通讯股份有限公司企业标准 (设计技术标准) Q/ZX 04.302.1–2003 软件编程规范C/C++ 20 ...
- FangDD Java编程规范
我们采用<Oracle/Sun原生的Java编程规范>和<Google Java编程规范> Google Java编程风格指南 January 20, 2014 作者:Haws ...
- 国内大型的内部 C# 编程规范
C#编程规范 改动记录 Ver. No 发版日期 编制人 批准人 改动的说明 目 录 1 1.1 1.2 2 2.1 2.1.1 Pascal 大写和小写 2.1.2 Came ...
- Batsing的网页编程规范(HTML/CSS/JS/PHP)
特别注意!!!我这里的前端编程规范不苟同于Bootstrap的前端规范. 因为我和它的目的不同,Bootstrap规范是极简主义,甚至有些没有考虑到兼容性的问题. 我的规范是自己从编程实践中总结出来的 ...
- IOS高级编程之一:多点触摸与手势验证
前段时间学习了IOS基础的一些控件的使用作为基础,现在开始学习一些高级编程的东西,手势处理器.文件I/O.定位.网络通信.多线程这些,分享一些学习的重点,还是很实用的. 今天就先介绍个简单点得,手势处 ...
随机推荐
- java学习之IO对象流
//注意对象类要打标记实现Serializable接口 package com.gh; import java.io.FileInputStream; import java.io.FileNotFo ...
- poj 1442 Black Box(优先队列&Treap)
题目链接:http://poj.org/problem?id=1442 思路分析: <1>维护一个最小堆与最大堆,最大堆中存储最小的K个数,其余存储在最小堆中; <2>使用Tr ...
- iOS/Xcode异常:reason = “The model used to open the store is incompatible with the one used to create the store”
reason=The model used to open the store is incompatible with the one used to create the store 出现上述异常 ...
- 制作Orcad的变种BOM(Variant BOM)
通常在Orcad中画的原理图并不仅仅是用于一款产品.比如一个控制器原理图,可能相应着很多款子产品线,而这些子产品线之间的差别就是通讯口组件不同,少焊几个芯片,或者仅仅是少焊几个电阻. 可是这样交付生产 ...
- eclipse the user operation is waiting for building workspace" to complete
"the user operation is waiting for building workspace" to complete", 解决办法: 1.选择菜单栏的“P ...
- Android 应用内HttpClient 与 WebView 共享 Cookie
DefaultHttpClient httpclient=....; String toUrl="https://cap.cityu.edu.hk/studentlan/details.as ...
- php数组操作小结
$x unset($x[3]) //key不重排
- C#注册表
C#注册表情缘 记得当时刚接触C#的时候,喜欢编写各种小软件,而注册表系列和网络系列被当时的我认为大牛的必备技能.直到我研究注册表前一天我都感觉他是那么的高深. 今天正好有空,于是就研究了下注册表 ...
- Hdu 1404 Digital Deletions
Problem地址:http://acm.hdu.edu.cn/showproblem.php?pid=1404 刚开始想采取找规律的方法解题,可以没有发现规律.无奈,只好采用求PN点的方法. 我们假 ...
- [置顶] 使用红孩儿工具箱完成基于Cocos2d-x的简单游戏动画界面
[Cocos2d-x相关教程来源于红孩儿的游戏编程之路CSDN博客地址:http://blog.csdn.net/honghaier 红孩儿Cocos2d-X学习园地QQ3群:205100149,47 ...