- 3
- 0
- 约2.41千字
- 约 5页
- 2016-05-23 发布于重庆
- 举报
web开发中需要注意的一些编码习惯
有过一定工作经验的朋友们,肯定对于项目开发中的coding标准非常熟悉,不同的团队或者项目,都有不太一样的编码习惯和指导文档。但是对于不同的编码习惯,大家肯定都希望使用大体上统一的风格,简单来说会使得开发效率更高,阅读速度更快,在这篇文章中,我们将分享一些个人觉得比较有效的编码习惯和最佳实践,如果你觉得有更多其它的经验,请和我们分享。
以下内容主要使用PHP做为例子,如果使用其它编程语言,编码基本类似,大家可以自己在项目中具体应用。
缩进问题 - Tab或者空格
最简单的问题,大家对于缩进使用的是tab或者space呢?
这个问题没有太多的必要去讨论,因为没有谁拥有完全正确的答案,但是最重要的一点,就是不要混用空格和tab,如果大家使用一些JS的校验工具,比如,jshint的话,你最常看到的问题就是
Mixed Tab and Space
个人推荐使用tab,因为不同的编辑器对于tab的解析也不太一样,如果你需要使用tab的话,可以考虑使用4个空格来代替。
类名称定义
为了在定义中避免重复,尽量使得定义包含一些前缀,并且使首字母大写,这样易于阅读,如下:
class MyClassName {
function MyClassName() {
}
}
变量名称
变量的定义,首字母使用小写字母,用来体现变量的数据类型,特别是在一些不要求严格声明的编程语言中,例如,javacript或者是PHP
参考的缩写如下
i: integer
f: float / double
s: string
a: array
o: object
r: resource
b: boolean
is: boolean
定义变量的例子如下:
PHP例子:
public $sFirstName = some value;
public $sSecondName = some value;
?
private $_iVariable;
?
$iDigit1 = $iDigit2 = 10;
?
$oMyClass = new MyClass();
Javascript例子:
var sFirstName = some value;
var sSecondName = some value;
var iSum = 25;
常量定义
一般使用大写字母来定义变量,如下:
define(PRJ_WEBSITE_URL, /);
define(PRJ_GLOBAL_CURRENCY, $);
方法定义
方法定义使用首字母小写,并且每一个单独的单词首字母大写,如下:
function getPropertyValue($sName) {
// your custom code is here
}
function setPropertyValue($sName, $sValue) {
// your custom code is here
}
各种语句中的格式定义
相关的一些结构体中格式定义如下(例如,if/else,for,each等等)
最好结构体和后面内容有空格,方便阅读
条件语句的括号外最好有空格
左右括号内不要有空格
前一个大括号不要单独占一行
内部的条件应该使用tab缩进
foreach ($aKeys as $iKey = $sValue) {
// your custom code is here
}
?
if ($bCondition) {
// your custom code is here
} else {
// your custom code is here
}
?
switch ($sKey) {
case 1:
// your custom code is here
break;
case 2:
// your custom code is here
break;
default:
// your custom code is here
break;
}
数据库表定义
数据库的表和字段,使用下划线来定义,方便阅读,例如:
CREATE TABLE `system_gb_tag` (
`tid` INT(10) NOT NULL AUTO_INCREMENT,
`parent_id` INT(10) NULL DEFAULT NULL,
`function_flag` INT(1) NULL DEFAULT NULL,
`official` INT(1) NULL DEFAULT NULL,
您可能关注的文档
- TotalCommander教程高级.doc
- TSGT50012009电梯使用管理与维护保养规则.doc
- TT软件打码综合最新教程(必看).doc
- TMS用户使用指南.docx
- TWRPRecovery最新全触摸简易使用教程.doc
- TY220型推土机技术特性及参数.doc
- T景观扩初方案设计评审表.doc
- U1精选试题及答案.doc
- U3DPRO原创3D游戏制作教程2.2.doc
- T梁外观质量控制.doc
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 2025统编版小学道德与法治三年级下册教学计划、教学设计附教学反思(附目录).docx
- 2026年廉政答案考试题库(考试直接用).docx VIP
- 虚列费用培训课件.ppt VIP
- Z20名校联盟(浙江省名校新高考研究联盟)2026届高三第二次联考日语含答案.doc VIP
- 煤矿2026年机电工作计划方案.docx VIP
- 企业合规法律服务指引(湖北省律师协会法律顾问专委会).pdf VIP
- Qu系列说明书QU16&QU24(加强版).pdf VIP
- 数学与生活:一元二次方程的起源.pptx VIP
- 事业单位d类综合应用能力必背知识点.pdf VIP
- (课堂用)TheFutureoftheEnglish(课件.ppt VIP
原创力文档

文档评论(0)