9.3 Domino/Notes Toolkits比较
根据上面的分析,我们在比较Domino/Notes工具包的时候,要考虑它们对非结构化数据的处理能力,考虑它们对Domino/Notes平台的依赖,考虑Domino/Notes安全特性的应用和限制情况。
同时,还将考虑工具在性能和效率、应用扩展能力、对不同操作系统的支持、支持跨平台、安全性、对Domino/Notes版本的支持、编码效率、代码易维护性等方面进行比较。
9.3.1 对非结构化数据处理能力的支持
| 对Notes数据对象结构的支持 | 对Notes设计的操纵能力 | 对RTF域的操纵能力 | 任意添加字段 |
C API | ★★★ | ★★★★★ | ★★★★★ | P |
C++ API | ★★★★★ | ★★★★★ | ★★★★★ | P |
Java/CORBA | ★★★ | ★★ | ★★★ | P |
LDDJ | 不支持 | ★ | ★ | 不支持 |
NotesSQL | 不支持 | ★ | ★ | 不支持 |
DXL | ★★★ | ★★★ | ★★ | P |
9.3.2 对Domino/Notes平台的支持和依赖
需要安装Notes/Domino | 支持的版本 | 对服务器的要求 |
C API | P | 所有版本 |
C++ API | P | 所有版本 |
Java/CORBA | CORBA方式不支持 | R5.03+ HTTP和DIIOP服务 |
LDDJ | P | R5.0+ |
NotesSQL | P | 4.6.4以上版本 |
DXL | P | R5.0+ |
9.3.3 安全性和存取控制
| 用户身份 | 安全性 | 控制ACL |
C API | Notes id | Notes安全机制 | P |
C++ API | Notes id | Notes安全机制 | P |
Java | Notes id | Notes安全机制 | P |
CORBA | 用户/程序提供 | 简单密码验证 | P |
LDDJ | Notes id | Notes安全机制 | 不支持 |
NotesSQL | Notes id | Notes安全机制,有附加的安全控制 | 不支持 |
DXL | Notes id | Notes安全机制 | P |
9.3.4 对操作系统的支持
| Windows | Linux | Solaris | MAC | HP-UX | AIX | AS/400 | S390 |
C API | P | P | P | P | P | P | P | P |
C++ API | P | P | P | | | P | P | |
Java/CORBA | P | P | P | P | P | P | P | P |
LDDJ | P | | | | | | | |
NotesSQL | P | | | | | | | |
DXL | P | | | | | | | |
9.3.5 开发能力和数据处理效率
| 数据存取效率 | 设计控制能力 | 权限控制能力 | 修改Notes客户端 | Domino附加任务 | 扩展事件管理 |
C API | ★★★★ | ★★★★ | ★★★★ | P | P | P |
C++ API | ★★★★ | ★★★★ | ★★★ | | P |
|
Java/CORBA | ★★ | ★★ | ★★ | | | |
LDDJ | ★★ | ★ | | | | |
NotesSQL | ★★ | ★ | | | | |
DXL | ★★★★ | ★★★ | ★★ | | | |
9.3.6 开发效率
| 开发速度 | 代码可读性 | 可维护性 |
C API | ★ | ★ | ★ |
C++ API | ★★★ | ★★★ | ★★★ |
Java/CORBA | ★★★★ | ★★★★★ | ★★★★ |
LDDJ | ★★★★★ | ★★★★★ | ★★★★★ |
NotesSQL | ★★★★★ | ★★★★ | ★★★★ |
DXL | ★★ | ★★★ | ★★★ |
9.3.7 其他
从各个工具包的成熟度来看,C/C++ API开发使用的时间最长,也最为稳定。NotesSQL也已经历多个版本的更迭,比较成熟。Java/CORBA工具包和LDDJ开发时间不长,在使用过程中感觉还不是很好用、不是很成熟。其他还有一些工具包,例如for COM、LSX等,是为了某种特定的需求的开发的,1.0版发布之后几乎没有更新。
从工具包最新发布时间来看,也是C/C++、NotesSQL、LDDJ、Java/CORBA等工具包相对活跃。Java相关的工具包更新速度比想象的要慢,可能与Domino/Notes目前正在从传统平台向J2EE平台转移,尚未稳定有关。
Lotus Domino/Notes Toolkits综述(一)
Lotus Domino/Notes Toolkits综述(二) C API
Lotus Domino/Notes Toolkits综述(三) C++ API
Lotus Domino/Notes Toolkits综述(四) Java
Lotus Domino/Notes Toolkits综述(五) LDDJ
Lotus Domino/Notes Toolkits综述(六) 其他
Lotus Domino/Notes Toolkits综述(七) 分析比较
Lotus Domino/Notes Toolkits综述(八) 分析比较 续
Lotus Domino/Notes Toolkits综述(九) 小结