




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序代码简要规范第一章 程序代码规范程序代码规范旨在为.Net、Java、Flex等常见程序开发技术的代码提供通用的规范,约束程序代码中关键和通用的部分,以方便代码的复用和后期的维护。1.1 包命名(命名空间)要求:格式为:com.emapping.应用名称.;对于第三方的代码,如果有改动,也需采用此命名。例如:防伪项目Java包:com.emapping.antifake. ; 防伪项目Net命名空间:com.emapping.antifake. ; 防伪项目Flex包:com.emapping.antifake. 。1.2 类、方法和变量命名要求:使用英文单词组合进行命名,并且相邻的单词首字母大写(即驼峰命名规则);全局变量或常量所有字母大写命名。例如:类UserService ,方法 getUserInfo() ,全局变量或常量COUNT。注意:1,不能使用中文汉字命名; 2,不能使用汉语拼音命名; 3,要使用有实际意义的英文单词。1.3 页面(Jsp|A)、样式和脚本命名要求:使用英文单词组合进行命名,并且全部小写。 样式和脚本一般要求保存在单独的目录中,并且目录和文件名称全为小写英文。例如:useredit.jspuserjsuser.js1.4 代码冗余 必须去掉所有未使用的注释掉的代码,以及页面中未使用的Javascript代码、样式代码、html元素。1.5 代码复用原则在代码中避免重复的代码,需将重复的代码重构成可复用的函数。当一个复杂函数中代码量超过了100行时,需拆分成多个可复用的函数,每个函数的代码量控制在100行以内。当一个复杂类中代码量超过了2000行时,需拆分成多个类,每个类的代码量控制在2000行以内。1.6 分层与命名(参考)本部分可参考使用,代码中有此层需依此命名,无此层可自行命名,但包命名(命名空间)不可变化;对于接口类和实现类命名格式,.net和flex可依据通用命名习惯,不依此要求。1.6.1 控制层命名:格式: com.emapping .应用名称.action.模块名例如:com.emapping.antifake.action.UserAction1.6.2 业务层命名:接口格式:com.emapping .应用名称.service.模块名例如:com.emapping.antifake.service.UserService实现类格式: com.emapping .应用名称.service.impl.模块名 例如:com.emapping.antifake.service.impl.UserServiceImpl1.6.3 持久层命名:接口格式:com.emapping .应用名称.dao.模块名例如:com.emapping.antifake.dao.UserDAO实现类格式: com.emapping .应用名称.service.impl.模块名 例如:com.emapping.antifake.dao.impl.UserDAOImpl1.6.4 持久化对象命名:格式:com.emapping .应用名称.model.实体对象名 例如:com.emapping.antifake.model.UserInfo1.6.5 代理层命名:格式:com.emapping .应用名称.delegate.模块名例如:com.emapping.antifake.delegate.UserDelegate一般情况下不要求使用代理层,但是如果使用第三方的组件是,不能在代码中直接调用第三方的组件包,必须使用专门的代理类进行包装。1.7 注释:1. 所有类、接口、非私有方法必须详细注释;2. 关键算法中使用的变量必须详细注释,最好包含调用的demo;3. 代码更新时,注释必须同时更新,更新内容包括修改人员、修改时间、修改内容。当方法(或类)修改的量达到40时,必需重构;4. 注释的量要求达到20%以上;5. 尽量使用中文注释,除非此处用英文可以精准的表达意思。1.8 异常:1. 所有异常不能抛弃;2. 所有异常需记录日志,不能在控制台输出;3. 充分利用finally释放占用资源;4. 所有自定异常需继承自mon.exception.GeneralFailureException1.9 数据有效性:验证网页数据有效性,需先在前台脚本中验证,然后在服务器上进行后台验证;1.10 测试:1. 单元测试要求达到语句覆盖。2. 单元测试要跟踪每一条语句,并观察数据流与变量的变化。3. 功能类都应该使用JUnit进行单元测试。第二章 JavaScript脚本和样式规范2.1 总则2.1.1 文件命名JavaScript 文件命名规则为: 英文小写目录+英文小写文件名称.js样式文件命名规则为: 英文小写目录英文小写文件名称.css例如:js/filename.js , css/style.css2.1.2 样式脚本页面分离原则JavaScript 代码若不是该 HTML 文件所专用的,避免在 HTML 文件中直接编写 JavaScript 代码。因为这样会大大增加 HTML 文件的大小,无益于代码的压缩和缓存的使用。同理样式也需和html文件分离。2.1.3 跨浏览器兼容原则必须使用跨浏览器兼容的脚本和样式,必须兼容IE6、IE7、IE8、IE9、Firefox3。2.2 Javascript脚本规范2.2.1 面向对象编程需使用面向对象的方式编写js脚本。减少全局变量的使用。将全局变量加上应用名称作为命名空间。如下所示:mapfy =globalVar:testglobal, globalVarTwo:testglobal 使用上面的全局变量则如下:mapfy.globalVar2.2.2 变量和方法命名变量和方法使用英文单词组合进行命名,并且相邻的单词首字母大写(即驼峰命名规则)。注意:1. 不能使用中文汉字命名;2. 不能使用汉语拼音命名;3. 要使用有实际意义的英文单词;4. 不要在命名中使用 “$”(美元符号)或者 “”(反斜杠);5. 不要把 “_”(下划线)作为变量名的第一个字符。2.3 样式规范2.3.1 样式精简原则编写css样式文件时尽量做到精简,一个属性能解决的就不要使用多个属性。2.3.2 图标合并原则编写css样式时,需将背景小图标放在同一张图片中通过位置偏移来控制图片的显示。2.3.3 css文件名命名规范模块:module.css基本共用:base.css布局、版面:layout.css主题:themes.css专栏:columns.css文字:font.css表单:forms.css补丁:mend.css打印:print.css2.3.4 页面结构元素div命名规范头:header内容:content/container尾:footer导航:nav侧栏:sidebar栏目:column页面外围控制整体布局宽度:wrapper左右中:left right center登录条:loginbar标志:logo广告:banner页面主体:main热点:hot新闻:news下载:download子导航:subnav菜单:menu子菜单:submenu搜索:search友情链接:friendlink页脚:footer版权:copyright滚动:scroll内容:content标签页:tab文章列表:list提示信息:msg小技巧:tips栏目标题:title加入:joinus指南:guild服务:service注册:regsiter状态态:status投票:vote合作伙伴:partner颜色命名-使用颜色的名称或者16进制代码.red color: red;.f60 color: #f60;.ff8600 color: #ff8600;字体大小命名-直接使用“font+字体大小”作为名称.font_12font-size: 12px;.font_9 font-size: 9pt;.(不建议使用pt)对齐样式命名-使用对齐目标的英文名称.left float:left;.bottom float:bottom;标题栏样式命名-使用“类别+功能”的方式命名.barnews .barproduct 注释书写规范1.行间注释-直接写于属性值后面,如:.searchborder:1px solid #fff;/*定义搜索输入框边框*/background:url(./images/icon.gif) no-report #333;/*定义搜索框的背景*/2.整段注释-分别在开始及结束地方加入注释,如:/*=搜索条=*/.search border:1px solid #fff;background:url(./images/icon.gif) no-repeat #333;/*=搜索条结束
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年住院医师规培-浙江-浙江住院医师规培(中医骨伤科)历年参考题库含答案解析(5套)
- 2025年住院医师规培-江西-江西住院医师规培(口腔修复科)历年参考题库含答案解析(5套)
- 2025年住院医师规培-江苏-江苏住院医师规培(外科)历年参考题库含答案解析(5套)
- 2025年住院医师规培-新疆-新疆住院医师规培(麻醉科)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-重庆-重庆食品检验工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-重庆-重庆水工监测工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-北京-北京家禽饲养员一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-北京-北京兽医防治员三级(高级工)历年参考题库典型考点含答案解析
- 首席安全官面试题与高级管理培训课程
- 黄冈电信面试实战模拟题及答案分析
- 2025-2030中国体外诊断行业深度分析及发展前景与发展战略研究报告
- 上海中学2024-2025学年初三二模英语试题试卷与答案含答案
- 2023+ESC急性冠状动脉综合征管理指南解读
- 子宫内膜类器官构建与临床转化专家共识(2025年版)解读课件
- 邢台2025年河北邢台学院高层次人才引进100人笔试历年参考题库附带答案详解
- 肿瘤患者VTE预防治疗
- 南京科远KD200变频器使用手册
- 副校长申请书
- 一飞再飞(2024年贵州中考语文试卷记叙文阅读试题)
- DB11-T 806-2022 地面辐射供暖技术规范
- 纯英文初三数学试卷
评论
0/150
提交评论