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.定位.网络通信.多线程这些,分享一些学习的重点,还是很实用的. 今天就先介绍个简单点得,手势处 ...
随机推荐
- maven安装jar到本地仓库
class12.jar这个东西在中央仓库里没有,所以,cmd到oracle\product\10.2.0\db_1\jdbc\lib路径下,mvn install 就好了(发布第三方jar到本地库) ...
- mongodb 限制ip访问
<pre name="code" class="python">一.限制访问IP和端口 MongoDB可以限制只允许某一特定IP来访问,只要在启动时 ...
- ubuntu 下关闭MySql server
转自 http://blog.csdn.net/tobacco5648/article/details/7625048 在终端输入命令 开启: sudo /etc/init.d/mysql ...
- Matrix Factorization, Algorithms, Applications, and Avaliable packages
矩阵分解 来源:http://www.cvchina.info/2011/09/05/matrix-factorization-jungle/ 美帝的有心人士收集了市面上的矩阵分解的差点儿全部算法和应 ...
- js 验证手机号 以及身份证正则表达式
手机号:① /^1(3[0-9]{9}|5[0-35-9][0-9]{8}|7[07][0-9]{8}|8[25-9][0-9]{8})$/ ② /^1(3\d|5[0-35-9]|7[07]|8[2 ...
- 兼容性问题( css)
记录平时遇见的兼容性问题,有更好的解决办法希望各位提出,会持续更新 提出时间 问题描述 解决方案 2014/7/15 table下面使用img或者其他元素例如embed会产生,对应的空隙,假如使用文字 ...
- Js 30 BOM
小知识点, 1.document.write()方法: 如果document.write()在一个事件中或window.onload=function(){}这个function里, 那么docume ...
- Hibernate入门之配置文件
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hi ...
- Deflater与Inflater的压缩与解压缩
原文:Deflater与Inflater的压缩与解压缩 package util; import java.util.Arrays; import java.util.zip.Deflater; im ...
- springMVC中得到request对象,session对象
RequestAttributes ra = RequestContextHolder.getRequestAttributes(); HttpServletRequest request = ((S ...