关于文档规范
2016-01-11 17:36
113 查看
无规矩不方圆,在编程的团队里面也需要一些共同的文档规范来加快代码的开发进度。在网上看到一篇很不错的文章,抽出一点对于自己有用的来看看:
1 html文档书写规范
文档类型声明及编码: 统一为html5声明类型; 编码统一为, 书写时利用IDE实现层次分明的缩进;
非特殊情况下样式文件必须外链至…之间;非特殊情况下JavaScript文件必须外链至页面底部;
引入样式文件或JavaScript文件时, 须略去默认类型声明, 写法如下:
4所有编码均遵循xhtml标准, 标签 & 属性 & 属性命名 必须由小写字母及下划线数字组成, 且所有标签必须闭合, 包括
6充分利用无兼容性问题的html自身标签, 比如span, em, strong, select, label,等等;
需要为html元素添加自定义属性的时候, 首先要考虑下有没有默认的已有的合适标签去设置, 如果没有, 可以使用须以”data-”为前缀来添加自定义属性,避免使用”data:”等其他命名方式;
7. 语义化html, 如 标题根据重要性用h*(同一页面只能有一个h1), 段落标记用p, 列表用ul, 内联元素中不可嵌套块级元素;
8. 尽可能减少div嵌套, 如
9. 书写链接地址时, 必须避免重定向,例如:href=”http://itaolun.com/”, 即须在URL地址后面加上“/”;
10. 在页面中尽量避免使用style属性,即style=”…”;
11. 必须为含有描述性表单元素(input, textarea)添加label, 如
12. 能以背景形式呈现的图片, 尽量写入css样式中;
13. 重要图片必须加上alt属性; 给重要的元素和截断的元素加上title;
14. 给区块代码及重要功能(比如循环)加上注释, 方便后台添加功能;
15. 特殊符号使用: 尽可能使用代码替代: 比如 <(<) & >(>) & 空格( ) & ?(?) 等等;
2 css
1 class与id的使用: id是唯一的并是父级的, class是可以重复的并是子级的, 所以id仅使用在大的模块上, class可用在重复使用率高及子级中
2 重复使用率高的命名, 请以自己代号加下划线起始, 比如i_clear;
3 css属性书写顺序, 建议遵循 布局定位属性–>自身属性–>文本属性–>其他属性. 此条可根据自身习惯书写, 但尽量保证同类属性写在一起.
属性列举: 布局定位属性主要包括: margin & padding & float(包括clear) & position(相应的 top,right,bottom,left) & display & visibility & overflow等;
自身属性主要包括: width & height & background & border;
文本属性主要包括: font & color & text-align & text-decoration & text-indent等;
其他属性包括: list-style(列表样式) & vertical-vlign & cursor & z-index(层叠顺序) & zoom等. 所列出的这些属性只是最常用到的, 并不代表全部;
4. 书写代码前, 考虑并提高样式重复使用率;
5. 避免兼容性属性的使用, 比如text-shadow || css3的相关属性;
6. 减少使用影响性能的属性, 比如position:absolute || float ;
7. 必须为大区块样式添加注释, 小区块适量注释;
3 javascript
文件编码统一为utf-8, 书写过程过, 每行代码结束必须有分号; 原则上所有功能均根据XXX项目需求原生开发, 以避免网上down下来的代码造成的代码污染(沉冗代码 || 与现有代码冲突 || …);
库引入: 原则上仅引入jQuery库
变量命名: 驼峰式命名. 原生JavaScript变量要求是纯英文字母, 首字母须小写, 如iTaoLun;
jQuery变量要求首字符为’_’, 其他与原生JavaScript 规则相同, 如: _iTaoLun;
另, 要求变量集中声明, 避免全局变量.
类命名: 首字母大写, 驼峰式命名. 如 ITaoLun;
函数命名: 首字母小写驼峰式命名. 如iTaoLun();
命名语义化, 尽可能利用英文单词或其缩写;
7 代码结构明了, 加适量注释. 提高函数重用率;
注重与html分离, 减小reflow, 注重性能.
4图片规范
1. 所有页面元素类图片均放入img文件夹
2. 图片格式仅限于gif || png || jpg;
3. 命名全部用小写英文字母 || 数字 || _ 的组合,其中不得包含汉字 || 空格 || 特殊字符;尽量用易懂的词汇, 便于团队其他成员理解; 另, 命名分头尾两部分, 用下划线隔开, 比如ad_left01.gif || btn_submit.gif;
4. 在保证视觉效果的情况下选择最小的图片格式与图片质量, 以减少加载时间;
5. 尽量避免使用半透明的png图片(若使用, 请参考css规范相关说明);
6. 运用css sprite技术集中小的背景图或图标, 减小页面http请求, 但注意, 请务必在对应的sprite psd源图中划参考线, 并保存至img目录下.
5注释规范
1. html注释: 注释格式
2. css注释: 注释格式
3. JavaScript注释, 单行注释使用’
参考网址 http://blog.sina.com.cn/s/blog_69eb015e0100mgr1.html
开发及测试工具约定
测试工具: 前期开发仅测试FireFox & IE6 & IE7 & IE8 , 后期优化时加入Opera & Chrome & Safari;
建议测试顺序: FireFox–>IE7–>IE8–>IE6–>Opera–>Chrome–>Safari, 建议安装firebug及IE Tab Plus插件.
1 html文档书写规范
文档类型声明及编码: 统一为html5声明类型; 编码统一为, 书写时利用IDE实现层次分明的缩进;
非特殊情况下样式文件必须外链至…之间;非特殊情况下JavaScript文件必须外链至页面底部;
引入样式文件或JavaScript文件时, 须略去默认类型声明, 写法如下:
<link rel=”stylesheet” href=”…” /> <style>…</style> <script src=”…”></script>
4所有编码均遵循xhtml标准, 标签 & 属性 & 属性命名 必须由小写字母及下划线数字组成, 且所有标签必须闭合, 包括
br (<br />), hr(<hr />)等; 属性值必须用双引号包括;
6充分利用无兼容性问题的html自身标签, 比如span, em, strong, select, label,等等;
需要为html元素添加自定义属性的时候, 首先要考虑下有没有默认的已有的合适标签去设置, 如果没有, 可以使用须以”data-”为前缀来添加自定义属性,避免使用”data:”等其他命名方式;
7. 语义化html, 如 标题根据重要性用h*(同一页面只能有一个h1), 段落标记用p, 列表用ul, 内联元素中不可嵌套块级元素;
8. 尽可能减少div嵌套, 如
<div class=”box”><div class=”welcome”>欢迎访问XXX, 您的用户名是<div class=”name”>用户名</div></div></div>完全可以用以下代码替代:
<div class=”box”><p>欢迎访问XXX, 您的用户名是<span>用户名</span></p></div>;
9. 书写链接地址时, 必须避免重定向,例如:href=”http://itaolun.com/”, 即须在URL地址后面加上“/”;
10. 在页面中尽量避免使用style属性,即style=”…”;
11. 必须为含有描述性表单元素(input, textarea)添加label, 如
<p>姓名: <input type=”text” id=”name” name=”name” /></p>须写成:
<p><label for=”name”>姓名: </label><input type=”text” id=”name” /></p>
12. 能以背景形式呈现的图片, 尽量写入css样式中;
13. 重要图片必须加上alt属性; 给重要的元素和截断的元素加上title;
14. 给区块代码及重要功能(比如循环)加上注释, 方便后台添加功能;
15. 特殊符号使用: 尽可能使用代码替代: 比如 <(<) & >(>) & 空格( ) & ?(?) 等等;
2 css
1 class与id的使用: id是唯一的并是父级的, class是可以重复的并是子级的, 所以id仅使用在大的模块上, class可用在重复使用率高及子级中
2 重复使用率高的命名, 请以自己代号加下划线起始, 比如i_clear;
3 css属性书写顺序, 建议遵循 布局定位属性–>自身属性–>文本属性–>其他属性. 此条可根据自身习惯书写, 但尽量保证同类属性写在一起.
属性列举: 布局定位属性主要包括: margin & padding & float(包括clear) & position(相应的 top,right,bottom,left) & display & visibility & overflow等;
自身属性主要包括: width & height & background & border;
文本属性主要包括: font & color & text-align & text-decoration & text-indent等;
其他属性包括: list-style(列表样式) & vertical-vlign & cursor & z-index(层叠顺序) & zoom等. 所列出的这些属性只是最常用到的, 并不代表全部;
4. 书写代码前, 考虑并提高样式重复使用率;
5. 避免兼容性属性的使用, 比如text-shadow || css3的相关属性;
6. 减少使用影响性能的属性, 比如position:absolute || float ;
7. 必须为大区块样式添加注释, 小区块适量注释;
3 javascript
文件编码统一为utf-8, 书写过程过, 每行代码结束必须有分号; 原则上所有功能均根据XXX项目需求原生开发, 以避免网上down下来的代码造成的代码污染(沉冗代码 || 与现有代码冲突 || …);
库引入: 原则上仅引入jQuery库
变量命名: 驼峰式命名. 原生JavaScript变量要求是纯英文字母, 首字母须小写, 如iTaoLun;
jQuery变量要求首字符为’_’, 其他与原生JavaScript 规则相同, 如: _iTaoLun;
另, 要求变量集中声明, 避免全局变量.
类命名: 首字母大写, 驼峰式命名. 如 ITaoLun;
函数命名: 首字母小写驼峰式命名. 如iTaoLun();
命名语义化, 尽可能利用英文单词或其缩写;
7 代码结构明了, 加适量注释. 提高函数重用率;
注重与html分离, 减小reflow, 注重性能.
4图片规范
1. 所有页面元素类图片均放入img文件夹
2. 图片格式仅限于gif || png || jpg;
3. 命名全部用小写英文字母 || 数字 || _ 的组合,其中不得包含汉字 || 空格 || 特殊字符;尽量用易懂的词汇, 便于团队其他成员理解; 另, 命名分头尾两部分, 用下划线隔开, 比如ad_left01.gif || btn_submit.gif;
4. 在保证视觉效果的情况下选择最小的图片格式与图片质量, 以减少加载时间;
5. 尽量避免使用半透明的png图片(若使用, 请参考css规范相关说明);
6. 运用css sprite技术集中小的背景图或图标, 减小页面http请求, 但注意, 请务必在对应的sprite psd源图中划参考线, 并保存至img目录下.
5注释规范
1. html注释: 注释格式
<!–这儿是注释–>, ’–’只能在注释的始末位置,不可置入注释文字区域;
2. css注释: 注释格式
/*这儿是注释*/;
3. JavaScript注释, 单行注释使用’
//这儿是单行注释’ ,多行注释使用
/* 这儿有多行注释 */;
参考网址 http://blog.sina.com.cn/s/blog_69eb015e0100mgr1.html
开发及测试工具约定
测试工具: 前期开发仅测试FireFox & IE6 & IE7 & IE8 , 后期优化时加入Opera & Chrome & Safari;
建议测试顺序: FireFox–>IE7–>IE8–>IE6–>Opera–>Chrome–>Safari, 建议安装firebug及IE Tab Plus插件.
相关文章推荐
- mina的编码和解码以及断包的处理,发送自己定义协议,仿qq聊天,发送xml或json
- PostgreSQL新手入门
- 从ZooKeeper源代码看如何实现分布式系统(三)高性能的网络编程
- 查询数据库表中同一字段值相同的数据行 +exists 的使用
- 第一章 SpringMVC之 基础知识及代码
- 关于JFace的TableViewer中引入ComboBoxCellEditor 快速双击对于Cell Combo无法展开问题的解决
- Java互联网应用架构师方向大纲
- druid 文档 和 源码地址
- 【Struts2基础】——核心与工作原理
- RunLoop深度探究(一)
- Linux下批量检察tomcat服务器是否运行shell编程
- DB2 如何求得时间差值
- webVIew中ZoomButtonsController崩溃//解决Receiver not registered: android.widget.ZoomButtonsController
- Qt4----子例化QDialog(可扩展对话框的使用)
- form表单提交小问题
- QT 中文转成Unicode 字符显示 \uxxxx
- 关于QuartusII中的文件加密
- PHP 之 Laravel 框架安装及相关开源软件
- 访问不了firefox附加组件页面怎么办
- JDK1.7 安装加(一劳永逸的环境配置)