本体驱动观察者模式与社交商业智能语义数据基础设施
本体驱动观察者模式
本体设置
本体驱动观察者模式将模式逻辑与代码分离,并封装在本体中。这样一来,即使在运行时,也能轻松更改模式逻辑,而无需修改代码。其核心目的是让非程序员用户也能直接修改本体,从而改变应用程序的行为。通过提供一个用户界面,用户可以编辑本体元数据并定义新的观察规则。
本体可以通过数据库、XML 或 RDFS 模型来实现。我们可以创建一个专门的用户界面,用于定义本体规则和创建实例。如果本体采用 RDFS 实现,且用户熟悉像 Protégé 这样的 RDFS 本体编辑器,那么他们可以直接使用该编辑器修改本体。
分析
为了对比传统观察者模式和本体驱动观察者模式,我们开发了一个基于 Java 的示例应用程序。首先,我们使用传统观察者模式实现该应用,然后再用本体驱动观察者模式实现,并使用 JArchitect 工具对这两个应用程序进行分析。
在依赖循环图中,单箭头表示一个组件使用另一个组件,双箭头表示两个组件相互依赖,边的粗细与涉及的成员数量所体现的耦合强度成正比。从图中可以明显看出,本体驱动观察者模式实现了组件之间的解耦。
在依赖矩阵中,蓝色单元格表示列中的包使用行中的包,绿色单元格表示列中的包被行中的包使用,黑色单元格表示相互依赖。传统观察者模式有 2 个黑色单元格,而本体驱动观察者模式没有,这表明本体驱动观察者模式不存在循环依赖。
优缺点
优点
- 无耦合 :观察者和主题之间不存在耦合,观察者无需向主题注册,主题也完全不
超级会员免费看
订阅专栏 解锁全文
707

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



