电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

Domino代码优化、编码规范

  • 资源ID:116917823       资源大小:112KB        全文页数:32页
  • 资源格式: PPT        下载积分:20金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要20金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

Domino代码优化、编码规范

<p>Domino应用开发规范 2004-04-03 石振勇 表单规则: ?11 表单命名规则 ?表单名称统一用中文,尽量能展示该表单的功能和意图. ?如果表单名无法展示其意图,或者表单名必须用英文,或者需要 对表单做些其他说明,则填写表单的备注. ?必须填写表单的别名.别名的可以用英文单词组合或汉语拼音. 如果用拼音,在能够容忍的长度内,尽量用全拼。规定:如果名 称全拼在16个字之内,用全拼并且每个字的首字母要大写。 如果超过16个字,则全用每个字的首字母大写。 ?表单名无需加”fm”的前缀。但可以按其功能类别加前缀,比 如用于区分“核心表单和非核心表单”的前缀 ?对于不需要用来创建文档的表单,名字用括弧括起来,用以 将后台表单和前台表单区分开,如功能性的表单作为后台表 单。 表单规则: ?12 表单的Js Header ? ?表单的Js Header中的函数应尽可能的少。只保留仅与本表单 相关的特殊的Js函数。 ?规定:放在页面里的js函数包要在页面中写明每个包中的函 数名称,方便查找和查看。 ? 资源库中的js函数包同时要有同名的说明文件。还要求有 一个总体说明文件。 ?13 表单的On KeyDown事件 ?可以在此函数中限制用户的一些按键,例如: ?/防止用户CTRL+N,避免繁盛保存冲突 ?if(event.keyCode=78 表单规则: ? 14 表单的OnLoad ? Onload中的代码要尽可能的简短,不要写具体的 实现代码,只写被调用的函数体即可,目的是为了 代码清晰简洁,便于维护。例如: ? /打开前设置相关状态域 ? ondocload(); ? /装载意见 ? LoadOpinion(); ? /修改附件链接 ? ModifyAttachLink(); ? /上载附件 ? AddAttach(); 域的规则: ? 21 域的命名规则 ? 可以用英文单词组合或汉语拼音.如果用拼音,在能 够容忍的长度内,尽量用全拼。规定:首字母大写 用全拼。 ? 域名不要加用以说明域的类型属性的前缀。但可以 按其功能类别加前缀,比如用于区分“控制域、数 据域、Html用的域”的前缀 ? 域名可以加其功能类型的前缀,用于功能类型有限 时。当功能类型几十上百种时,就没意义了。 域的规则: ? 22 文本域容量限制问题 ? 除非一个NotesItem需要在视图或文件 夹中显示,后台创建的notesItem一定 要将其 IsSummary属性置为False 视图的规则 ?31 视图的命名规则 ?视图名称统一用中文,尽量能展示该视图的功能和意图. ?如果视图名无法展示其意图,或者视图名必须用英文,或者需要 对视图做些其他说明,则填写视图的备注。规定:如果视图本 身是被调用的在备注中必须写明被谁调用。 ?必须填写视图的别名.别名的可以用英文单词组合或汉语拼音. 如果用拼音,在能够容忍的长度内,尽量用全拼. 规定:如果名 称全拼在16个字之内,用全拼并且每个字的首字母要大写。 如果超过16个字,则全用每个字的首字母大写。 ?视图名无需加”vw”的前缀. ?对于不需要用于前台显示的视图,名字用括弧括起来成为隐 藏视图,用以将后台视图和前台视图区分开 视图的规则 ? 33 视图的列 ? 一般应填写列的“标题”属性,用于辨别该列 ? 视图的列的内容的字体应统一设置,一般字号设置 为9,字体为宋体,颜色根据客户需要设置,风格 应协调统一。 ? 视图的列公式尽可能的简洁,减少计算量。 ? 避免使用时间相关的列公式, 比如Now, Created, Modified. ? 列尽可能不排序 ? 删除所有不必要的列 视图的规则 ? 34 视图的选择公式 ? 避免使用复杂的视图选择公式 ? 视图选择公式避免使用与时间、当前 用户相关的函数或命令,如 now,Today,UserName都是应该 避免使用的 视图的规则 ? 35 嵌入视图 ? 视图作为“嵌入元素”嵌入页面或表单 时,“要显示的行”属性的数字尽量设 置的少些,以提高嵌入视图的打开速 度。规定:初始值设为20行,如果用 户提出速度问题,可以改为10行,作 为第一解决方案。 代理的规则 ? 41代理的命名规则 ? 代理的名字可以用英文单词组合或汉语拼 音.如果用拼音,在能够容忍的长度内,尽量用 全拼. 规定:如果名称全拼在16个字之内, 用全拼并且每个字的首字母要大写。如果 超过16个字,则全用每个字的首字母大写 。 ? 必须填写代理的备注,对代理进行详细的 说明。 ? 代理名加用于标明其是否为核心代理的前 缀. 代理的规则 ? 42 代理的其他规则 ? 对于定时执行的代理,在该数据库正式启 用前,或者该定时代理暂时不使用时,取 消代理前的复选框,以暂时禁用该代理。 ? 对于那些只为管理者在客户端使用的代理 ,应设为“私有代理”,防止为他人误用 ? 代理 “Sub Initialize” 中的代码要尽可能的 简短,不能超过40行。多个代理中或和其 他设计元素中共享的代码,应独立到 “script库” 中。 代理的规则 ? 43 同时运行代理 ? 缺省的,domino同一时刻只执行一个web 代理(串行), 配置domino并行运行web 代理能够提高应用的答复时间。 ? 配置并行运行代理,需要设置服务器文档 中HTTP页下的“是否同时运行web代理”为 “是”或者在notes.ini中设置这一行 “DominoAsynchronizeAgents=1” 代理的规则 ?44防止资源冲突 ?同时运行web代理时,为防止资源冲突,要使用用加锁机制 ,例如: ?SharesResources = docCgi.UNID(0) + “save“ ?lockID = Createlock(SharesResources) ?gotLock = Codelock(lockID) ?= ?/你的代码 ?= ?If (gotLock) Then ?releaseLock = Codeunlock(lockID) ?dseleteLock=Destroylock(lockID) ?End If Script库的规则 ? script库中要放功能相近的代码,以达 到“高内聚”的目的。也便于查看代码 。 ? Script 库的开头区域要有对整个Script 说明的注释 LotusScript代码规则 61 函数的长度 ? 单个函数中的代码行数不要超过40行 。这是一个最重要的规则。 LotusScript代码规则 ?62 函数的命名 ?让我们看一些错误的命名: ?PersonLog 更新人员日志 ?PeopleOut 打印人员外出的信息 ?RemoveUser&#39;从文档的当前环节和当前处理人中删除指定处 理人 ?RenyuanJB计算人员的级别 ?621 函数的名字用英文单词组合。 ?622 函数名字的语法结构,一般应采用“动宾”等动词开头 的结构 ?623 函数的名字在能容忍的程度内,尽可能的长,以更 好的揭示意图 ?624 函数的名字应和函数的功能一致,不可超出或小于 函数的功能,或者“风马牛不相及”。 LotusScript代码规则 ?63参数的规则 ?6.3.1参数名字要有意义 ?例如: ?sub SetValue(width, height) 良好的风格 ?sub SetValue(x,y)不好的风格 ?例如编写字符串拷贝函数StringCopy,它有两个参数。如果把参数 名字起为str1和str2,例如function StringCopy( str1, str2) ?那么我们很难搞清楚究竟是把str1拷贝到str2中,还是刚好倒过来。 可以把参数名字起得更有意义,如叫strSource和strDestination。这 样从名字上就可以看出应该把strSource拷贝到strDestination。 ?632如果输入参数以值传递的方式传递 ,则宜改用“ByVal argument”方式来传递,这样可以防止作为参数的变量值被修改, 同时又可以省去临时变量的构造过程,从而提高效率。 ?633 避免函数有太多的参数,参数个数尽量控制在5个以内。 LotusScript代码规则 ? 64 函数的返回值 ? 要书写函数的返回值类型 ? 函数的返回值要与函数的名字相配合 ? 函数的正常返回值和错误返回值的区 分 ? 函数尽量不要通过参数传递函数的返 回值,除非有多个不相干的返回值 LotusScript代码规则 ? 65 函数的职责 ? 函数的职责要单一,如果觉得职责的“ 粒度”不好把握,可以先用自然语言写 出总控模块(可以作为注释),针对 自然语言的每句话即可作为一个函数 。 LotusScript代码规则 ? 66 变量的规则 ? 每个模块必须使用 option declare 这个语句 来强制要求所有的变量必须定义 ? 变量的定义后面要书写该变量的注释 ? 变量的作用范围尽量少用全局,作用范围 越小越好 ? 变量尽量都要定义类型 ? 少使用Variant类型 LotusScript代码规则 ? 67嵌套的深度和广度 ? 条件语句的嵌套不能超过3层。 ? 循环语句的嵌套不能超过3层。 ? 两者混合的嵌套也不能超过3层。 ? 条件结构的开始和结束语句之间的 代码不能超过20行。 ? 循环结构的开始和结束语句之间的 代码不能超过20行。 LotusScript代码规则 ?将Redim的使用降到最少,下面的片断A比片断B快20% ?For i = 1 to 10000 ?If (i iMax) Then ?iMax = iMax + 100 ?Redim Preserve sArray(1 To iMax) ?End If ?sArray(i) = “” ?Next ?Fragment B ?For i = 1 to 10000 ?Redim Preserve sArray(1 To i) ?sArray(i) = “” ?Next ?使用GetNextDocument代替GetNthDocument LotusScript代码规则 ?68 其他规则 ?使用For循环代替Do循环 ?遍历数组元素时,使用Forall代替For ?避免使用不必要的数组,例如:片断A比片断B快一倍。 ?片断 A ?for i=1 to 100 ?sum = sum + x(i) ?next ?t(1)=sum ?片断 B ?for i=1 to 100 ?t(1)=t(1)+x(i) ?Next LotusScript代码规则 ? 69 禁止硬编码 ? 任何将数据库文件名和路径名 直接写 在程序中的,都是硬编码。 ? 任何取当前数据库同路径作为目标数 据库路径的做法,都是硬编码 公式规则 ? 尽可能不用或少用DbColumn, DbLookup ? 尽可能使用视图列序号而不是域的名 字作为DbColumn or DbLookup 的参数 ? 使用DbColumn, DbLookup.时, 尽量开启“缓存”参数 图片规则 ? 所有的图片尽量放在 文件系统上,使 用来引用,这样既可以利用 浏览器端的缓存,也可以省去Domino 对图片的转换 JavaScript ? 具有通用性的,可以提取的js函数独 立到一个单独的资源数据库中。 注释规则 ?101 函数体注释 ?针对每个函数,按照下面的模板进行注释 ?&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39;&#39; &#39;&#39;&#39;&#39;&#39;&#39;&#39;</p>

注意事项

本文(Domino代码优化、编码规范)为本站会员(油条)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




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