除非微不足道,任何程序开发都会遇上代码重用的议题。Lotus Notes的程序开发是以一个数据库为部署单位的,重用代码也就是用一个数据库继承另一个称为模版的数据库的设计的形式,应用数据库在创建时复制单个模版数据库的所有设计元素,或者在开发过程中引入(可能多个)模版数据库的特定元素(自R 8起,Lotus Notes改用应用程序的术语代替数据库,不过在笔者的系列文章里,这两个词语时常混用)。一个应用中,既有继承自模版的设计元素,又有专属当前应用的新元素。当模版里的设计元素发生变更后,要保证继承它设计的数据库的相应元素更新,就必须对它们刷新设计。这样自然就产生了区分一个应用中继承的和其他的两类设计元素的问题。
对此,Lotus Notes有两种应对方法。第一种方法是应用数据库继承某个模版数据库的设计(在数据库的属性信息框的设计页显示和设置),那些不属于模版数据库的新设计元素就必须特别标记“禁止设计刷新和替换”。也就是普通元素都来自模版,没有标记。第二种方法则是应用数据库本身不继承任何模版,特定的设计元素取自某些模版,在它们的属性信息框的设计页标注模版的名称。所以标记的情况正好和第一种方法相反,没有标记的普通设计元素都是专属于当前应用。第一种方法,继承关系明显,用Lotus Notes客户端在数据库的属性信息框里就可以看到。第二种方法,一个应用程序继承的模版不易看出,须用Designer打开设计,逐个查看设计

本文探讨了Lotus Notes中替换设计和刷新设计两种方法在程序部署和更新中的应用。第一种方法是数据库继承模版设计,而第二种方法是通过指定模版获取特定设计元素。开发环境下的数据库可以根据需要继承自多个模版,但在生产环境中,通常使用设计替换以避免繁琐的刷新过程。R8.5后,IBM提供了可配置的设计修改提醒,但存在一个bug,导致在编辑某些设计元素时会出现多次提醒。
最低0.47元/天 解锁文章
5427

被折叠的 条评论
为什么被折叠?



