ImageVerifierCode 换一换
格式:PPTX , 页数:32 ,大小:129.69KB ,
资源ID:4610137      下载积分:12 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4610137.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(Domino代码优化编码规范.pptx)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

Domino代码优化编码规范.pptx

1、Domino应用开发规范2004-04-03石振勇石振勇表单规则表单规则:11 表单命名规则表单命名规则表单名称统一用中文,尽量能展示该表单的功能和意图.如果表单名无法展示其意图,或者表单名必须用英文,或者需要对表单做些其他说明,则填写表单的备注.必须填写表单的别名.别名的可以用英文单词组合或汉语拼音.如果用拼音,在能够容忍的长度内,尽量用全拼。规定:如果名称全拼在16个字之内,用全拼并且每个字的首字母要大写。如果超过16个字,则全用每个字的首字母大写。表单名无需加”fm”的前缀。但可以按其功能类别加前缀,比如用于区分“核心表单和非核心表单”的前缀对于不需要用来创建文档的表单,名字用括弧括起来

2、用以将后台表单和前台表单区分开,如功能性的表单作为后台表单。表单规则表单规则:12 表单的表单的Js Header 表单的表单的Js Header中的函数应尽可能的少。只保留仅与本表单中的函数应尽可能的少。只保留仅与本表单相关的特殊的相关的特殊的Js函数。函数。规定:放在页面里的规定:放在页面里的js函数包要在页面中写明每个包中的函函数包要在页面中写明每个包中的函数名称,方便查找和查看。数名称,方便查找和查看。资源库中的资源库中的js函数包同时要有同名的说明文件。还要求有函数包同时要有同名的说明文件。还要求有一个总体说明文件。一个总体说明文件。13 表单的表单的On KeyDown事件事件可

3、以在此函数中限制用户的一些按键,例如:可以在此函数中限制用户的一些按键,例如:/防止用户防止用户CTRL+N,避免繁盛保存冲突避免繁盛保存冲突if(event.keyCode=78&event.ctrlKey)return false;表单规则表单规则:14 表单的表单的OnLoadOnload中的代码要尽可能的简短,不要写具体的中的代码要尽可能的简短,不要写具体的实现代码,只写被调用的函数体即可,目的是为了实现代码,只写被调用的函数体即可,目的是为了代码清晰简洁,便于维护。例如:代码清晰简洁,便于维护。例如:/打开前设置相关状态域打开前设置相关状态域ondocload();/装载意见装载意见

4、LoadOpinion();/修改附件链接修改附件链接ModifyAttachLink();/上载附件上载附件AddAttach();域的规则域的规则:21 域的命名规则域的命名规则可以用英文单词组合或汉语拼音可以用英文单词组合或汉语拼音.如果用拼音如果用拼音,在能在能够容忍的长度内够容忍的长度内,尽量用全拼。规定:首字母大写尽量用全拼。规定:首字母大写用全拼。用全拼。域名不要加用以说明域的类型属性的前缀。但可以域名不要加用以说明域的类型属性的前缀。但可以按其功能类别加前缀,比如用于区分按其功能类别加前缀,比如用于区分“控制域、数控制域、数据域、据域、Html用的域用的域”的前缀的前缀域名可以

5、加其功能类型的前缀,用于功能类型有限域名可以加其功能类型的前缀,用于功能类型有限时。当功能类型几十上百种时,就没意义了。时。当功能类型几十上百种时,就没意义了。域的规则域的规则:22 文本域容量限制问题文本域容量限制问题除非一个除非一个NotesItem需要在视图或文件需要在视图或文件夹中显示,后台创建的夹中显示,后台创建的notesItem一定一定要将其要将其 IsSummary属性置为属性置为False视图的规则视图的规则31 视图的命名规则视图的命名规则视图名称统一用中文视图名称统一用中文,尽量能展示该视图的功能和意图尽量能展示该视图的功能和意图.如果视图名无法展示其意图如果视图名无法展

6、示其意图,或者视图名必须用英文或者视图名必须用英文,或者需要或者需要对视图做些其他说明对视图做些其他说明,则填写视图的备注。规定:如果视图本则填写视图的备注。规定:如果视图本身是被调用的在备注中必须写明被谁调用。身是被调用的在备注中必须写明被谁调用。必须填写视图的别名必须填写视图的别名.别名的可以用英文单词组合或汉语拼音别名的可以用英文单词组合或汉语拼音.如果用拼音如果用拼音,在能够容忍的长度内在能够容忍的长度内,尽量用全拼尽量用全拼.规定:如果名规定:如果名称全拼在称全拼在16个字之内,用全拼并且每个字的首字母要大写。个字之内,用全拼并且每个字的首字母要大写。如果超过如果超过16个字,则全用

7、每个字的首字母大写。个字,则全用每个字的首字母大写。视图名无需加视图名无需加”vw”的前缀的前缀.对于不需要用于前台显示的视图,名字用括弧括起来成为隐对于不需要用于前台显示的视图,名字用括弧括起来成为隐藏视图,用以将后台视图和前台视图区分开藏视图,用以将后台视图和前台视图区分开视图的规则视图的规则33 视图的列视图的列一般应填写列的一般应填写列的“标题标题”属性,用于辨别该列属性,用于辨别该列视图的列的内容的字体应统一设置,一般字号设置视图的列的内容的字体应统一设置,一般字号设置为为9,字体为宋体,颜色根据客户需要设置,风格,字体为宋体,颜色根据客户需要设置,风格应协调统一。应协调统一。视图的

8、列公式尽可能的简洁,减少计算量。视图的列公式尽可能的简洁,减少计算量。避免使用时间相关的列公式,避免使用时间相关的列公式,比如比如Now,Created,Modified.列尽可能不排序列尽可能不排序删除所有不必要的列删除所有不必要的列视图的规则视图的规则34 视图的选择公式视图的选择公式避免使用复杂的视图选择公式避免使用复杂的视图选择公式视图选择公式避免使用与时间、当前视图选择公式避免使用与时间、当前用户相关的函数或命令,如用户相关的函数或命令,如now,Today,UserName都是应该都是应该避免使用的避免使用的视图的规则视图的规则35 嵌入视图嵌入视图视图作为视图作为“嵌入元素嵌入元

9、素”嵌入页面或表嵌入页面或表单时,单时,“要显示的行要显示的行”属性的数字尽属性的数字尽量设置的少些,以提高嵌入视图的打量设置的少些,以提高嵌入视图的打开速度。规定:初始值设为开速度。规定:初始值设为20行,如行,如果用户提出速度问题,可以改为果用户提出速度问题,可以改为10行,行,作为第一解决方案。作为第一解决方案。代理的规则代理的规则41代理的命名规则代理的命名规则代理的名字可以用英文单词组合或汉语拼代理的名字可以用英文单词组合或汉语拼音音.如果用拼音如果用拼音,在能够容忍的长度内在能够容忍的长度内,尽量用尽量用全拼全拼.规定:如果名称全拼在规定:如果名称全拼在16个字之内,个字之内,用全

10、拼并且每个字的首字母要大写。如果用全拼并且每个字的首字母要大写。如果超过超过16个字,则全用每个字的首字母大写。个字,则全用每个字的首字母大写。必须填写代理的备注,对代理进行详细的必须填写代理的备注,对代理进行详细的说明。说明。代理名加用于标明其是否为核心代理的前代理名加用于标明其是否为核心代理的前缀缀.代理的规则代理的规则42 代理的其他规则代理的其他规则对于定时执行的代理,在该数据库正式启对于定时执行的代理,在该数据库正式启用前,或者该定时代理暂时不使用时,取用前,或者该定时代理暂时不使用时,取消代理前的复选框,以暂时禁用该代理。消代理前的复选框,以暂时禁用该代理。对于那些只为管理者在客户

11、端使用的代理,对于那些只为管理者在客户端使用的代理,应设为应设为“私有代理私有代理”,防止为他人误用,防止为他人误用代理代理“Sub Initialize”中的代码要尽可能的中的代码要尽可能的简短,不能超过简短,不能超过40行。多个代理中或和其行。多个代理中或和其他设计元素中共享的代码,应独立到他设计元素中共享的代码,应独立到“script库库”中。中。代理的规则代理的规则43 同时运行代理同时运行代理缺省的,缺省的,domino同一时刻只执行一个同一时刻只执行一个web代代理(串行),理(串行),配置配置domino并行运行并行运行web代代理能够提高应用的答复时间。理能够提高应用的答复时间

12、配置并行运行代理,需要设置服务器文档配置并行运行代理,需要设置服务器文档中中HTTP页下的页下的“是否同时运行是否同时运行web代理代理”为为“是是”或者在或者在notes.ini中设置这一行中设置这一行“DominoAsynchronizeAgents=1”代理的规则代理的规则44防止资源冲突防止资源冲突同时运行同时运行web代理时,为防止资源冲突,要使用用加锁机制,代理时,为防止资源冲突,要使用用加锁机制,例如例如:SharesResources=docCgi.UNID(0)+savelockID=Createlock(SharesResources)gotLock=Codelock(l

13、ockID)=/你的代码你的代码=If(gotLock)ThenreleaseLock=Codeunlock(lockID)dseleteLock=Destroylock(lockID)End IfScript库的规则库的规则script库中要放功能相近的代码,以达库中要放功能相近的代码,以达到到“高内聚高内聚”的目的。也便于查看代的目的。也便于查看代码。码。Script 库的开头区域要有对整个库的开头区域要有对整个Script说明的注释说明的注释 LotusScript代码规则代码规则61 函数的长度函数的长度单个函数中的代码行数不要超过单个函数中的代码行数不要超过40行。行。这是一个最重要

14、的规则。这是一个最重要的规则。LotusScript代码规则代码规则62 函数的命名函数的命名让我们看一些错误的命名:让我们看一些错误的命名:PersonLog 更新人员日志更新人员日志PeopleOut 打印人员外出的信息打印人员外出的信息RemoveUser从文档的当前环节和当前处理人中删除指定处从文档的当前环节和当前处理人中删除指定处理人理人RenyuanJB计算人员的级别计算人员的级别621 函数的名字用英文单词组合。函数的名字用英文单词组合。622 函数名字的语法结构函数名字的语法结构,一般应采用一般应采用“动宾动宾”等动词开等动词开头的结构头的结构623 函数的名字在能容忍的程度内

15、尽可能的长,以更函数的名字在能容忍的程度内,尽可能的长,以更好的揭示意图好的揭示意图624 函数的名字应和函数的功能一致,不可超出或小于函数的名字应和函数的功能一致,不可超出或小于函数的功能,或者函数的功能,或者“风马牛不相及风马牛不相及”。LotusScript代码规则代码规则63参数的规则参数的规则6.3.1参数名字要有意义参数名字要有意义例如:例如:sub SetValue(width,height)良好的风格良好的风格sub SetValue(x,y)不好的风格不好的风格例如编写字符串拷贝函数例如编写字符串拷贝函数StringCopy,它有两个参数。如果把参数,它有两个参数。如果把参

16、数名字起为名字起为str1和和str2,例如,例如function StringCopy(str1,str2)那么我们很难搞清楚究竟是把那么我们很难搞清楚究竟是把str1拷贝到拷贝到str2中,还是刚好倒过来。中,还是刚好倒过来。可以把参数名字起得更有意义,如叫可以把参数名字起得更有意义,如叫strSource和和strDestination。这。这样从名字上就可以看出应该把样从名字上就可以看出应该把strSource拷贝到拷贝到strDestination。632如果输入参数以值传递的方式传递如果输入参数以值传递的方式传递,则宜改用,则宜改用“ByVal argument”方式来传递,这样可

17、以防止作为参数的变量值被修改,方式来传递,这样可以防止作为参数的变量值被修改,同时又可以省去临时变量的构造过程,从而提高效率。同时又可以省去临时变量的构造过程,从而提高效率。633 避免函数有太多的参数,参数个数尽量控制在避免函数有太多的参数,参数个数尽量控制在5个以内。个以内。LotusScript代码规则代码规则64 函数的返回值函数的返回值要书写函数的返回值类型要书写函数的返回值类型函数的返回值要与函数的名字相配合函数的返回值要与函数的名字相配合函数的正常返回值和错误返回值的区函数的正常返回值和错误返回值的区分分函数尽量不要通过参数传递函数的返函数尽量不要通过参数传递函数的返回值回值,除

18、非有多个不相干的返回值除非有多个不相干的返回值LotusScript代码规则代码规则65 函数的职责函数的职责函数的职责要单一,如果觉得职责的函数的职责要单一,如果觉得职责的“粒度粒度”不好把握,可以先用自然语不好把握,可以先用自然语言写出总控模块(可以作为注释),言写出总控模块(可以作为注释),针对自然语言的每句话即可作为一个针对自然语言的每句话即可作为一个函数。函数。LotusScript代码规则代码规则66 变量的规则变量的规则每个模块必须使用每个模块必须使用 option declare 这个语句这个语句来强制要求所有的变量必须定义来强制要求所有的变量必须定义变量的定义后面要书写该变量

19、的注释变量的定义后面要书写该变量的注释变量的作用范围尽量少用全局,作用范围变量的作用范围尽量少用全局,作用范围越小越好越小越好变量尽量都要定义类型变量尽量都要定义类型少使用少使用Variant类型类型LotusScript代码规则代码规则67嵌套的深度和广度嵌套的深度和广度 条件语句的嵌套不能超过条件语句的嵌套不能超过3层。层。循环语句的嵌套不能超过循环语句的嵌套不能超过3层。层。两者混合的嵌套也不能超过两者混合的嵌套也不能超过3层。层。条件结构的开始和结束语句之间的条件结构的开始和结束语句之间的代码不能超过代码不能超过20行。行。循环结构的开始和结束语句之间的循环结构的开始和结束语句之间的代

20、码不能超过代码不能超过20行。行。LotusScript代码规则代码规则将将Redim的使用降到最少,下面的片断的使用降到最少,下面的片断A比片断比片断B快快20%For i=1 to 10000If(i iMax)TheniMax=iMax+100Redim Preserve sArray(1 To iMax)End IfsArray(i)=“”NextFragment BFor i=1 to 10000Redim Preserve sArray(1 To i)sArray(i)=“”Next使用使用GetNextDocument代替代替GetNthDocumentLotusScript代码

21、规则代码规则68 其他规则其他规则使用使用For循环代替循环代替Do循环循环遍历数组元素时,使用遍历数组元素时,使用Forall代替代替For避免使用不必要的数组,例如:片断避免使用不必要的数组,例如:片断A比片断比片断B快一倍。快一倍。片断片断 Afor i=1 to 100sum=sum+x(i)nextt(1)=sum片断片断 Bfor i=1 to 100t(1)=t(1)+x(i)NextLotusScript代码规则代码规则69 禁止硬编码禁止硬编码任何将数据库文件名和路径名任何将数据库文件名和路径名 直接写直接写在程序中的,都是硬编码。在程序中的,都是硬编码。任何取当前数据库同路

22、径作为目标数任何取当前数据库同路径作为目标数据库路径的做法,都是硬编码据库路径的做法,都是硬编码公式规则公式规则尽可能不用或少用尽可能不用或少用DbColumn,DbLookup尽可能使用视图列序号而不是域的名尽可能使用视图列序号而不是域的名字作为字作为DbColumn or DbLookup的参数的参数使用使用DbColumn,DbLookup.时,时,尽量开启尽量开启“缓存缓存”参数参数图片规则图片规则所有的图片尽量放在所有的图片尽量放在 文件系统上,使文件系统上,使用用来引用,这样既可以利用来引用,这样既可以利用浏览器端的缓存,也可以省去浏览器端的缓存,也可以省去Domino对图片的转换

23、对图片的转换JavaScript具有通用性的,可以提取的具有通用性的,可以提取的js函数独函数独立到一个单独的资源数据库中。立到一个单独的资源数据库中。注释规则注释规则101 函数体注释函数体注释针对每个函数,按照下面的模板进行注释针对每个函数,按照下面的模板进行注释 NAME 名字名字 PARAMETERS 每个参数的名字、意图、类型每个参数的名字、意图、类型 PRE-CONDITIONS 前提条件前提条件RETURNED VALUES 类型,格式类型,格式 LAST UPDATED BY 作者作者 LAST UPDATED DATE 2002-1-28,2002-3-11 VERSION

24、NUMBER 2.1 DESCRIPTION 实例化本类实例化本类sub subNamedim.setend sub注释规则注释规则102 代码行注释代码行注释对于变量、关键的代码行都要在其右边进行注释。对于变量、关键的代码行都要在其右边进行注释。103 设计元素版本说明设计元素版本说明对于使用对于使用%include 来隐藏代码的代理或来隐藏代码的代理或Script库,需要在库,需要在%include 上面说明下面三个上面说明下面三个信息:信息:1.更新人更新人2.更新时间更新时间3.被引入被引入 代码的版本信息代码的版本信息4.被引入代码的作者被引入代码的作者5.被引入代码的功能概要被引入代码的功能概要 LAST UPDATED BY 更新人更新人 LAST UPDATED DATE 2002-1-28,2002-3-11 VERSION NUMBER 2.1Author 代码作者代码作者 DESCRIPTION 实例化本类实例化本类总结:1.首要考虑性能问题,尽可能不用或少用DbColumn,DbLookup以及其他影响性能的设计。总结:2.单个函数中的代码行数不要超过40行。这是一个最重要的规则最重要的规则 3.函数的职责要单一 4.禁止硬编码5.必须注释

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服