Domino代码优化、编码规范
32页1、Domino应用开发规范 2004-04-03 石振勇 表单规则: ?11 表单命名规则 ?表单名称统一用中文,尽量能展示该表单的功能和意图. ?如果表单名无法展示其意图,或者表单名必须用英文,或者需要 对表单做些其他说明,则填写表单的备注. ?必须填写表单的别名.别名的可以用英文单词组合或汉语拼音. 如果用拼音,在能够容忍的长度内,尽量用全拼。规定:如果名 称全拼在16个字之内,用全拼并且每个字的首字母要大写。 如果超过16个字,则全用每个字的首字母大写。 ?表单名无需加”fm”的前缀。但可以按其功能类别加前缀,比 如用于区分“核心表单和非核心表单”的前缀 ?对于不需要用来创建文档的表单,名字用括弧括起来,用以 将后台表单和前台表单区分开,如功能性的表单作为后台表 单。 表单规则: ?12 表单的Js Header ? ?表单的Js Header中的函数应尽可能的少。只保留仅与本表单 相关的特殊的Js函数。 ?规定:放在页面里的js函数包要在页面中写明每个包中的函 数名称,方便查找和查看。 ? 资源库中的js函数包同时要有同名的说明文件。还要求有 一个总体说明文件。 ?13 表单的O
2、n KeyDown事件 ?可以在此函数中限制用户的一些按键,例如: ?/防止用户CTRL+N,避免繁盛保存冲突 ?if(event.keyCode=78 表单规则: ? 14 表单的OnLoad ? Onload中的代码要尽可能的简短,不要写具体的 实现代码,只写被调用的函数体即可,目的是为了 代码清晰简洁,便于维护。例如: ? /打开前设置相关状态域 ? ondocload(); ? /装载意见 ? LoadOpinion(); ? /修改附件链接 ? ModifyAttachLink(); ? /上载附件 ? AddAttach(); 域的规则: ? 21 域的命名规则 ? 可以用英文单词组合或汉语拼音.如果用拼音,在能 够容忍的长度内,尽量用全拼。规定:首字母大写 用全拼。 ? 域名不要加用以说明域的类型属性的前缀。但可以 按其功能类别加前缀,比如用于区分“控制域、数 据域、Html用的域”的前缀 ? 域名可以加其功能类型的前缀,用于功能类型有限 时。当功能类型几十上百种时,就没意义了。 域的规则: ? 22 文本域容量限制问题 ? 除非一个NotesItem需要在视图或文件 夹
3、中显示,后台创建的notesItem一定 要将其 IsSummary属性置为False 视图的规则 ?31 视图的命名规则 ?视图名称统一用中文,尽量能展示该视图的功能和意图. ?如果视图名无法展示其意图,或者视图名必须用英文,或者需要 对视图做些其他说明,则填写视图的备注。规定:如果视图本 身是被调用的在备注中必须写明被谁调用。 ?必须填写视图的别名.别名的可以用英文单词组合或汉语拼音. 如果用拼音,在能够容忍的长度内,尽量用全拼. 规定:如果名 称全拼在16个字之内,用全拼并且每个字的首字母要大写。 如果超过16个字,则全用每个字的首字母大写。 ?视图名无需加”vw”的前缀. ?对于不需要用于前台显示的视图,名字用括弧括起来成为隐 藏视图,用以将后台视图和前台视图区分开 视图的规则 ? 33 视图的列 ? 一般应填写列的“标题”属性,用于辨别该列 ? 视图的列的内容的字体应统一设置,一般字号设置 为9,字体为宋体,颜色根据客户需要设置,风格 应协调统一。 ? 视图的列公式尽可能的简洁,减少计算量。 ? 避免使用时间相关的列公式, 比如Now, Created, Modified.
4、? 列尽可能不排序 ? 删除所有不必要的列 视图的规则 ? 34 视图的选择公式 ? 避免使用复杂的视图选择公式 ? 视图选择公式避免使用与时间、当前 用户相关的函数或命令,如 now,Today,UserName都是应该 避免使用的 视图的规则 ? 35 嵌入视图 ? 视图作为“嵌入元素”嵌入页面或表单 时,“要显示的行”属性的数字尽量设 置的少些,以提高嵌入视图的打开速 度。规定:初始值设为20行,如果用 户提出速度问题,可以改为10行,作 为第一解决方案。 代理的规则 ? 41代理的命名规则 ? 代理的名字可以用英文单词组合或汉语拼 音.如果用拼音,在能够容忍的长度内,尽量用 全拼. 规定:如果名称全拼在16个字之内, 用全拼并且每个字的首字母要大写。如果 超过16个字,则全用每个字的首字母大写 。 ? 必须填写代理的备注,对代理进行详细的 说明。 ? 代理名加用于标明其是否为核心代理的前 缀. 代理的规则 ? 42 代理的其他规则 ? 对于定时执行的代理,在该数据库正式启 用前,或者该定时代理暂时不使用时,取 消代理前的复选框,以暂时禁用该代理。 ? 对于那些只为管理者在客户端
5、使用的代理 ,应设为“私有代理”,防止为他人误用 ? 代理 “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
《Domino代码优化、编码规范》由会员油条分享,可在线阅读,更多相关《Domino代码优化、编码规范》请在金锄头文库上搜索。
最新学校新冠肺炎疫情突发事件应急处置办法和流程
最新疫情防控期间学校用餐与食堂管理规定和师生一日流程图
最新Xx省xx区返学师生员工健康登记表
诊所简介
高中英语-第二单元-《the-United-Kingdom》课件-新必修5
新版新目标英语七年级下unit4--Don't-eat-in-class课件
新版PEP六年级英语unit6-how-do-you-feel-A-Let's-talk
安徽专版2018秋八年级英语上册Unit5Doyouwanttowatchagameshow第6课时习题课件新人教目标版
酸的和甜的教学课件.doc
Lesson-1-Where-do-we-go-from-here概要
Docker技术与实践
七年级英语下册-Unit-9-What-does-he-look-like(第3课时)(Grammar-Focus-3d)同步语法精讲精练课件-(新版
《I'm-going-to-do-the-high-jump》PPT课件3
高二英语外研版-必修5-Module-2-A-Job-Worth-Doing-Reading课件
英语片段教学-I-can-do-it
Adobe公司简介
安徽专版2018秋八年级英语上册Unit5Doyouwanttowatchagameshow第2课时习题课件新人教目标版
第二单元全课件Unit2-What-time-do-you-go-to-school-全课件
第18课-Windows的磁盘管理与安全
第12章--Windows-Server-2008路由及远程访问
2024-04-09 29页
2024-04-08 25页
2024-04-08 13页
2024-04-08 17页
2024-04-08 17页
2024-04-08 11页
2024-04-08 14页
2024-04-08 17页
2024-04-08 15页
2024-04-08 16页