Openbiz框架的设计目标是使设计,开辟和维护网络应用法度变的快捷和便利。Openbiz架构的主要创新是其基于元数据的设计。这意味着Openbiz对象是基于元数据文件中的描述的而成立的。对Openbiz来讲在年夜大都时间构建一个应用法度就相当于设置核开辟的他的元数据文件。由于 XML语言的自我诠释这一特性,使得Openbiz的应用法度十分易于维护,与此同时Openbiz是如同XML语言一样也一个具有丰富可扩大的框架。
Openbiz核心对象
任何应用都可以由两部分组成-后端和前端。通常的主要业务逻辑运行在后端,而用户界面在前端。在Openbiz中,后端主要为"数据对象"或"办事对象"。前端主要有"表单对象"和"视图对象。"
数据对象
数据对象(又名"DO")是一个数据单位。Openbiz数据对象将数据库中的表和关系映射到系统对象中。它在对象中封装了(成立,读取,更新和删除)等操作,并提供了高级搜索接口。
一个数据对象包含了一组字段,在典型的用法中,一个数据对象映射到数据库中的表,并且每一个字段映射到数据表中的列或SQL表达式。
办事对象
办事对象是一个Openbiz的系统单位,其包含业务逻辑实现的一组函数(体例)。典型的Openbiz办事对象的典范是"用户身份验证办事" 和"电子邮件办事"
表单对象
表单对象是用户界面区块的单位,它包含了一组相关的表单控件,他可以是一个标准的HTML表单,一个带有东西栏和导航条的HTML表格,一个图片列表等。
一个表单对象包含了一组表单控件,它便可以是简单的也可以是高级的HTML控件。典型的使用体例是:一个表单对象映射到一个数据对象上,并把每一个表单对象上的表单控件别离映射到数据对象的字段上。
视图对象
视图对象实际上饰演了网页的页面。试图对象是表单对象的容器。你可以把视图对象(网页)想象为是地板,而表单对象就是依附在上面的瓷砖。
核心对象与元数据
核心的Openbiz对象是基于Openbiz元数据定义的。下面摘录的部分是一个数据对象的元数据,元数据的含义我们将在后续章节中讨论。
Openbiz框架将读取这样的元数据并且动态从"Openbiz对象工厂"中成立出这些对象。
Openbiz架构特点
多层面向对象设计
Openbiz是一个多层的面向对象设计。Openbiz应用法度被分为三层设计,暗示层,业务逻辑层和数据集成层,在Openbiz中:
暗示层是由Openbiz视图和表单实现的。Openbiz还有额外的Javascript库负责通过ajax的体例与办事器后真个暗示层对象通信。
商业逻辑层是由Openbiz数据对象 和Openbiz 办事对象 实现的。
第三方包,系统底层由Zend_DB来措置数据集成层的操作。
Openbiz MVC
Openbiz的一个关头性特性就是它是一个基于模块-视图-节制器(MVC)设计模式的框架。这一特点使得基于Openbiz开辟的应用法度加倍便于管 理。因为暗示层(View)是与应用法度的数据和逻辑(Model)清晰的分手开的。所有用户与应用法度的交互全部由前端节制器来措置。
比较Openbiz MVC和市场上主流的MVC框架例如JSF和Strusts等,Openbiz框架加倍接近JSF,因为他们同样是基于组件的布局。Openbiz的视图层包含了视图对象,表单对象和表单控件等组件,这些组件在措置请求时都是可被拜候的。
Openbiz 对象关系映射
Openbiz 实现了需要的"对象关系映射"功能,允许数据对象代表数据库中的数据和关系。下列列表是Openbiz对象关系映射所实现的功能。
数据库抽象层
Openbiz 数据对象可以通过Zend_DB来毗连各类类型的关系型数据库,Zend_DB为Openbiz底层提供了在PDO和本地数据库客户端东西之上的数据抽象 层。开辟人员可使用Openbiz数据对象API来实现年夜部分的数据库操作,及直接挪用Zend_DB API来完成高级功能。