`
canonical
  • 浏览: 367157 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[导入]再谈普元EOS中的数据总线

阅读更多
   前两天一位普元的朋友衣风http://blog.sina.com.cn/u/1495516693在我的blog上留言,谈到对数据总线的不同看法. 我本人并未使用过普元EOS,所做的判断只是基于我个人肤浅的第一印象, 很有可能是不准确的. 不过, 目前我仍然坚持自己对于普元EOS的看法,呵呵.
    
    1. EOS产生的xml描述文件中的大量条目都是EOS自身的结构要求,而与实际业务无关,即EOS描述文件中的有效信息量密度很低.
    衣风认为条目并不是EOS自身的结构要求,而是业务对象的结构描述. 这里我的看法是业务对象应该尽量通过领域(Domain)语言来描述, 领域信息的外在表象应该尽量是卷缩的,而不是展开的, 应该尽量是抽象的而不是实现细节层面上的.例如:
    <function class="test.MyFunctionProvider">
        <args>
            <arg>
                <name>argA</name>
                <value>3</value>
            </arg>
        </args>
    </function>
    以上信息可以描述一个方法调用, 这里的function, args, arg, name, value等标签的设置都是解析器为了理解该调用的语义而规定的结构元素,这些元素并不属于函数本身. 例如我们可以规定如下的调用格式来简化描述文件而不损失信息,
    <function class="test.MyFunctionProvider">
        <arg name="argA">3</arg>
    </function>
    而在我们的工作流引擎中, 业务操作的调用以封装后的形式出现
    <BusinessA:DoWorkA argA="3"/>
    通过标签封装之后, 我们在调用的时候所需要提供的信息是最小化的, 每一个涉及到的元素都是有着业务含义的, 而将解析器本身的结构要求隐蔽在封装的标签定义中.此后我们如果更换了实现,而业务需求不变, 则我们的调用处是不会受到影响的.
    现在基于xml语法的文件格式很多, 我们的工作流引擎也采用了xml描述. 但是我们的一个基本观点是, xml配置文件解析器不应该直接理解文件中所有的标签, 即它只需要理解自身的结构元素, 而为引入Domain知识保留余地.
   
    2. 普元EOS中的结构似乎很难进行有效的扩展。而所谓的xml总线技术更加剧了这一点
    衣风认为"正是将XML作为数据传递的总线,才使应用在数据层次上具有了较强的扩展能力"。从面向对象的观点看, 程序中普适性的基本基元是数据与行为的集合体, 而程序模块之间的交互也绝不仅仅是通过数据来进行, 而是往往呈现出一种数据与行为的交织状况. 普元的模型应该包含了大量发生紧密关联的局部元素, 它们应该处在同一进程(状态)空间中, 直接访问对象应该是最简单,最经济, 最完备的信息传递方式, 而"xml节点的表达能力远远超越了普通的数据类型,但充其量也不过是对现有数据的规整的树形表示,并不具有动态计算能力(甚至是最简单的lazy evaluation)". 实际上对于所谓的总线, 最简单的模型是一个可以动态管理的变量集合, 那么一个Map就足够了. 在集合中我们可以保存各种对象, 比如xml节点, 但是又不限于xml节点. 从建模的角度上说, 把xml节点定义为一级集合元素我认为是不合适的. 通过对象的成员函数, 我们在对象图中可以包含大量的动态计算信息, 例如
     obj.getSomeCalculatedAttribute().getLazyLoadValue()
    这些动态语义在纯数据含义的xml总线技术中不知道如何表达.
    对象图表达数据关联的能力也强于树形结构的xml节点, 例如 obj.getRefObj().getRefObj() == obj, 不知道这样的关联在普元EOS的数据总线中如何表达.
    在并发访问中如果需要同步, 对于对象, 我们可以使用synchronized机制, 但是对于xml节点不知道如何才能有通用的处理方式. 
分享到:
评论
1 楼 wmuu 2008-09-06  
复杂逻辑用biz写出来简直是天书,如果逻辑自己实现bizlet,从节点取值和返回值绝对能提高你的工作量

相关推荐

    EOS.rar_EOS_普元_普元EOS_普元EOS教程

    **EOS - 普元企业服务总线** EOS(Enterprise Service Bus),由普元公司...通过学习"EOS概览",开发者不仅能深入了解普元EOS的功能特性,还能掌握实际开发中的技巧和最佳实践,为构建高效、稳定的SOA体系奠定基础。

    普元eos7.5开发手册

    ### 普元EOS Platform 7.5 开发手册知识点概览 #### 一、NUIDemo使用与实践 **1.1 执行SQL脚本** - **知识点概述:** - 在开始学习NUI控件之前,首先需要了解如何执行SQL脚本,这是进行后续开发的基础。 - SQL...

    普元EOS开发帮助手册

    普元EOS开发帮助手册,普元EOS开发帮助手册,普元EOS开发帮助手册,普元EOS开发帮助手册

    普元EOS nuiDemo示例

    **普元EOS nuiDemo示例详解** 普元EOS是一款基于Java的企业级应用开发平台,它为开发者提供了丰富的组件和工具,便于快速构建企业信息系统。nui是EOS的一个重要组成部分,专注于用户界面的设计与实现,提供了强大的...

    普元EOS7.5基础教程(官网版)

    普元EOS是一款国内知名的中间件平台,专注于企业级服务总线(Enterprise Service Bus, ESB)和应用服务器领域。EOS7.5版本是其一个重要的迭代,提供了更强大的功能和优化的性能。本教程将深入介绍如何使用普元EOS7.5...

    普元导入导出用于Excel导入导出

    普元导入导出功能能够无缝对接Excel,支持用户直接在Excel环境中设计模板,定义字段映射,实现数据的导入和导出。 3. **数据格式转换**: 在导入导出过程中,系统需要处理各种数据类型(如字符串、数字、日期等)...

    普元EOS-Platform-7.0基础开发教程完整版

    ### 普元EOS-Platform-7.0基础开发教程知识点详析 #### 一、产品概述 **1.1 产品简介** 普元EOS Platform 7.0是一款基于J2EE、Eclipse等开放技术和平台的产品,它通过配置化、组件化、图形化和一体化的方式,为...

    普元eos帮助文档

    普元eos是一款由普元信息技术有限公司开发的软件产品,...以上内容是对普元eos帮助文档中介绍的主要知识点的提炼和总结。通过这些知识,开发者可以更快速地掌握NUI框架的使用,从而提高开发效率,缩短项目上市的时间。

    普元EOS程序员培训教程

    本教程专注于介绍普元EOS平台,这是一款强大的企业级服务总线(ESB)和应用程序服务器,专为Java开发者设计,用于构建、部署和管理企业级应用程序。普元EOS提供了丰富的功能,包括服务化、工作流、数据集成、消息...

    EOS5.0 EOSV5.0 上海 普元 EOS5.0应用指南

    综上所述,《EOS5.0 EOSV5.0 上海 普元 EOS5.0应用指南》详细介绍了普元EOS5.0的PetStore示例和tag应用示例的具体使用方法。通过这些示例,用户不仅能够了解EOS的基本功能,还能学习如何有效地使用该平台来开发高...

    普元EOS简单运算逻辑的编写

    标题“普元EOS简单运算逻辑的编写”涉及的是在普元EOS平台中如何构建和实现基础的业务逻辑。普元EOS是一款企业级的应用服务器软件,它提供了开发、部署和管理企业应用的服务,支持多种编程语言,包括Java。在这个...

    普元EOS 实例Demo -- Primeton NUI Demo

    Primeton NUI(New User Interface)是普元EOS中的一个重要组成部分,主要负责提供用户界面和交互设计。这个Demo包含了一系列实例,让用户了解如何在普元EOS平台上使用NUI控件和新版本功能。通过实践这些示例,...

    普元EOS培训资料 绝对好 初学者的好朋友

    【普元EOS培训资料】是一套专为初学者设计的学习资源,它包含了全面且深入的EOS相关知识,确保用户在完成学习后能够熟练掌握并应用普元EOS平台。这套资料来源于普元公司内部,因此其专业性和实用性得到了充分保证。 ...

    普元EOS培训示例源码1

    5. **system.sdvx**:这可能是普元EOS中的一个数据库脚本文件,用于创建或更新EOS系统的数据模型和表结构。SDVX可能是普元的一种专有格式,用于存储和管理数据库脚本。 6. **com.primeton.train.expenseauto**、**...

    上海普元EOS6.0程序员教程

    【上海普元EOS6.0程序员教程】是针对软件开发者设计的一份详尽教程,旨在帮助读者理解并掌握面向服务架构(SOA)的核心理念,以及如何利用普元EOS这一全球领先的SOA应用平台进行实际开发。教程不仅理论与实践相结合...

    普元EOS7.6安装步骤.pdf

    在进行普元EOS7.6的安装过程中,需要仔细阅读安装指南中的每一步,确保理解每项配置的含义,并根据实际情况进行调整。安装过程可能会遇到各种问题,比如端口冲突、文件权限设置、数据库配置错误等,都可以通过查阅...

    普元EOS学习PPT

    **普元EOS学习PPT详解** 普元EOS是一款企业级的中间件平台,它提供了全面的服务治理、服务集成以及业务流程管理...对于想要在IT行业中从事企业级服务开发和管理的人员,这份“普元EOS学习PPT”无疑是一份宝贵的资源。

    普元EOS 安装配置资料

    普元EOS是一款国内知名的中间件平台,主要用于构建企业级服务总线(Enterprise Service Bus, ESB)和业务流程管理(Business Process Management, BPM)系统。它提供了服务注册、服务治理、服务安全、服务监控等一...

    普元EOS Platform7.5培训视频

    普元EOS Platform7.5培训视频,入门讲解,入门实例,让你更快,更全面的掌握普元EOS Platform

    普元EOS开发向导

    【普元EOS开发向导】是一份针对普元EOS平台的开发指南,旨在帮助开发者快速理解和实践基于EOS的系统开发。EOS是一个企业级的应用开发框架,它提供了丰富的功能和工具来简化企业应用的构建过程。这份向导包含了两个...

Global site tag (gtag.js) - Google Analytics