好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Siebel实施规范编码规范.doc

8页
  • 卖家[上传人]:夏**
  • 文档编号:469459846
  • 上传时间:2023-04-30
  • 文档格式:DOC
  • 文档大小:82.50KB
  • / 8 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • Siebel实施规范 ——编码规范编写人: 张远舟日 期:2010-7-5整理为word格式目 录一、简介 11. 目的 12. 适用范围 1二、编程规范 11. 总体规范 12. 代码格式规范 13.代码注释规范 14. 命名规范 35. 逻辑稳定规范 45. 性能效率规范 4三、 代码Review规范 51. 代码Review的目的 52. 代码Review方法 53. 代码Review规范 5整理为word格式一、简介1. 目的 本文的目的在于为汉得Siebel技术团队的编码规范提出意见和参考2. 适用范围 本规范(草稿)应用于Siebel实施项目中使用E-Script进行的编码的脚本开发二、编程规范1. 总体规范【规范1】优先考虑编码的可替代方案(User Property, Model State, Validation等)【规范2】时刻考虑到你的每一个编码都会由其他的人在其他的时间使用、维护、增强【规范3】以不懂程序的人都能读懂你的代码为编码的最基本目标和要求【规范4】尽量使你的程序容易被调用(重用),修改和扩展【规范5】合理地捕获和处理异常【规范5】新创建的对象需要在代码结束时显式释放【规范6】效率是永远需要重点考虑、分析和优化的问题点【规范7】把相关的逻辑封装在BS中,避免代码分散冗余,增加维护成本2. 代码格式规范【规范1】单行代码不得太长,需便于阅读,太长的代码行需要在适合的位置断行【规范2】每行代码最多包含一个独立的语句。

      规范3】代码块之间使用Tab缩进一次【规范4】一个方法的代码语句不宜过多,复杂的逻辑使用拆分成几个独立的Function来实现,并确保一个Function只做一件独立的事情规范5】每一个变量的声明独占一行,变量的声明置于代码块开始位置规范6】在逻辑块、代码块之间合理使用单个空行3.代码注释规范【规范1】适当地编写代码注释,增强代码的可读性和可维护性说明:一般情况下,程序或Function的作用,参数,创建和修改信息等都需要通过注释来标识,便以使用、维护和管理程序中的逻辑块、复杂算法、重要变量的意义等也需要用注释来说明规范2】在修改代码的同时,修改代码注释说明:代码被修改后,必须同步修改代码注释,已实现注释的正确指导意义代码频繁被改动但注释不变是容易导致歧义的根源之一整理为word格式【规范3】注释必须有但是不能过度并不需要为每一句代码、每一个变量使用一句注释,这样反而使得代码变得冗长累赘而不易维护一般只在关键点使用注释规范4】方法注释规范方法注释用于说明方法文件的一些基本信息,包括方法的作用,参数,返回值,创建者和创建日期,更新者和更新日期,代码版本等如对Function SubmitOrder(orderId)注释如下:/* * Function: To Set The Status of The Specified Order to Be ‘Submitted’ * @Param1 orderId: The Id Value of The Specified Order * @Return: true if success, otherwise false * Author:Neo.Zhang * Created: 6/10/2010 * Last Updated By:Neo.Zhang * Last Updated: 7/5/2010 * Modifications:* 1. Add Validation to Make Sure Order Type Is Purchase Order on 6/12/2010 By Neo.Zhang* 2. Commented the Code Block of Purchase History Accumulation on 7/5/2010 By Neo.Zhang* Version: 1.2 */注释可根据项目环境选择使用中文或英文。

      规范5】变量注释规范 以下情况,变量需要使用注释:1. 常量,尤其是业务常量2. 采用了不容易被理解的缩写作为变量名的变量3. 程序逻辑中重要的核心变量4. 作为方法返回值的变量5. 变量注释的格式为在变量声明的上一行使用//注释如://A Dictionary Array to Store Order Quantity of Product Idvar aProdQty = []; 【规范6】不要编写修饰性的注释不要使用类似以下的注释因为脚本具有最大字节数限制,这样的注释将占用大量字节数,且显得累赘多余/****************************************************************** * This Code Block Deals With the RMA Business******************************************************************/ 【规范7】在具有复杂算法或复杂逻辑的代码块前,说明其算法或逻辑例如:整理为word格式/** 以下的代码用于计算维修店计划建议表数据,具体逻辑是…* …*/【规范8】对于临时代码或弃用代码,需要注释掉并说明注释原因,不可直接删除。

      临时代码是指现在不使用,但是将来有可能被启用的代码弃用代码是指原来使用,但是现在不再使用的代码对于这样的代码,我们通常使用/**/把它们注释起来,并在代码块上一行说明注释原因,如: 临时代码注释说明://修改SO行数量时,连带修改相应的PO行数量在直发业务流程启用后开始使用/* …Code*/弃用代码注释说明://经业务方确认,网点提交订单时不再累计采购量/* …Code*/【规范9】尽量使你的注释简单注释只要能起到帮助清晰理解代码的意义即可,不需要字字句句都写得完整规范10】建议在编写代码之前就编写好你的注释编写注释除了能提高代码可读性外,也是指导代码编写,帮助理清思路的好方法,因此尽量养成编码前编写代码而不是编码后写注释的习惯4. 命名规范【规范1】必须慎重地、认真地为你的每一个BS、方法、变量命名说明:要起一个科学合理的名字,因为名字是理解代码的重要依据同时,使用统一规范的命名格式将使系统风格更加统一且一旦代码发布,即不可再随意更改,其依赖者、继承者都要永远维持这种命名因此一次性命名规范准确具有重要意义规范2】使用英文习惯表达方式命名说明:英文是全世界软件业通用的交流语言规范4】采用有意义的单词和短语作为方法、变量名,要求望文知意。

      规范5】合理谨慎地使用缩写规范6】变量命名规范 说明:一般情况下,变量根据变量类型,带一个相应的前缀(常用类型可忽略),后面跟着变量定义的英文描述,首字母小写,其它单词首字母大写以下是各自变量类型的命名规范和示例类型前缀示例 Stringnonevar orderStatus;整理为word格式var errMsg;var message;Integeri or nonevar iCount;(常用于计数变量)var qtyTotal;(用于业务变量)Numbern or nonevar nAmount; (常用于计算结果存放)var orderAmount; (用于业务变量)Date/Timed/tvar dDate;var tCurrentTime;Booleanbvar bRecordFound;User Defined Objectovar oMyObject = new Object;oMyObject.name = "My Defined Object";oMyObject.description = "This is My Object";BObovar boOrder;BCbcvar bcOrder;BSbsvar bsDropShip;Property Setpsvar psInput;Arrayavar aProduct = [];【规范7】常量命名规范说明:常量是指程序中值固定,不会在程序中被修改的量,譬如值列表、业务常数等。

      此类变量的命名规范是:全部字母大写,单词与单词之间用下划线分隔例如: var STATUS_NEW = TheApplication().InvokeMethod("LookupValue","FS_ORDER_STATUS","New"); var MAX_LINES_LTD = 1000; //此类业务常量一定要在代码开始的地方声明,不可直接用数字替代 常量一般在代码块最开始的地方声明,程序中不能有修改这些变量的语句 尽量避免业务常量的使用,建议将业务常量作为参数维护在系统当中规范8】方法名命名规范方法名命名规范与代码相类似,但方法名的首字母需大写,且不需要前缀一般情况下,方法名以动词开头,譬如:Function SubmitOrder(orderId);Function CreateAsset(searilId, assetNum, productId);5. 逻辑稳定规范【规范1】代码中尽量避免使用硬编码【规范2】对象变量声明以后,必须在程序结束时释放【规范3】限制循环嵌套的层数,避免效率问题和死循环问题【规范4】值列表,尤其是动态值列表字段的设值需要使用Pick方法【规范5】尽量避免使用全局变量,尤其是Application层的全局变量【规范6】禁止混用SetSearchSpec和SetSearchExpr整理为word格式【规范7】使用SetSearchSpec方法时,需确保条件值不为空【规范8】尽量避免使用Browser Script,禁止使用Browser Script进行业务数据操作 说明:只允许在Applet层使用Browser Script,通常用于操作确认、提示等基本功能。

      规范9】代码中进行数字计算和比较时,需确保变量的类型为数值型【规范10】代码中需要正确地捕获和处理异常(try{}catch(e){}finally{})【规范11】方法的参数数量限制在6个以内[规范12] 在做数据查询的时候要考虑ViewMode,程序结束时也需要考虑ViewMode的重置说明:参数过多将容易导致参数传递错误,且不易于维护和理解5. 性能效率规范【规范1】代码中尽量减少查询次数【规范2】尽量避免大表大范围数据扫描【规范3】必要时采用适当的算法提高代码执行效率【规范4】在需要作为查询条件的字段上建立索引【规范5】必要时使用数据库View,Function,Package等方式改进性能,但不可滥用【规范6】尽量避免使用代码三、 代码Revie。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.