EEPlat的元模型体系
EEPlat的元模型体系是元数据驱动的必要条件之中的一个。仅仅有通过元模型可以完好的描写叙述一个软件系统。才可以完整的定义该软件系统的元数据,也才干真正实现软件系统的元数据驱动式开发。也就意味着一个软件系统的UI、业务逻辑、流程、功能、权限等均须要可以通过元模型描写叙述,可以完整的定义出对应的元数据。
EEPlat的核心思想,从高度抽象的视角看“一切软件表现及行为皆数据”
EEPlat的元模型能够分为后台处理和UI两大部分。
(1)后台处理部分。业务对象元模型主要描写叙述业务功能的静态结构,服务元模型主要完毕业务逻辑。同一时候负责业务对象元模型之间的交互。工作流元模型主要完毕业务流程及业务对象元模型的协作;组织元模型通过组织元模型之间的职责关系能够实现灵活的组织结构。
(2)UI部分。UI部分的元模型主要包含菜单、面板、表格、表格元素、功能树等,通过开创性的利用层叠式界面模型模式组织用户界面,以及使用注冊表来统一管理控制器。能够简单易扩展得实现复杂的界面。
层叠式界面模型是我们在综合分析当前主流界面框架和引擎的基础上,进一步抽象提取出一个通用的界面模型。
界面模型主要由面板、表格、界面元素三个概念组成。通过面板的嵌套摆放实现界面框架,通过表格来完毕界面元素的集合及控制,通过界面元素来表达界面中的每个详细的元素,如输入框、显示区、链接、button等。
通过三个层次的复用组合基本能实现各种界面个性化的复杂性要求。从而也使得界面可以通过元数据驱动的方式动态创建,使得平台可以实现各种复杂、个性化的交互界面需求。
完好的元模型体系结构例如以下图:
EEPlat的元模型体系的更多相关文章
- EEPlat PaaS VS Saleforce force.com
综述 EEPlatPaaS和Saleforce的Force.com都是元数据驱动应用的解决方式.整体而言,Force.com提供了更上层的解决方式,屏蔽了SQL语句.数据库:EEPlat更加底层,有更 ...
- 声明式编程思想和EEPlat
声明式编程定义 声明式编程(英语:Declarativeprogramming)它是一种编程范式.程相对立.它描写叙述目目标性质,让计算机明白目标,而非流程. 声明式编程不用告诉电脑问题领域.从而避免 ...
- EEPlat的元数据驱动的运行引擎
EEPlat採用了元数据驱动的核心思想,因而EEPlat最重要的就是完好的元模型体系及高效灵活的解析运行引擎.EEPlat的运行引擎通过解析基于元模型的元数据,解释运行形成终于的业务系统. EEPla ...
- EEPLAT学习
eeplat:Open Source Metadata PaaS 開始学习的时候仅仅是下了整个项目而且跑通,顺手在这个平台自己主动化的建立 了个管理系统,接下来開始深入研究这个开源平台 所谓元数据(m ...
- EEPlat PaaS中的多租户数据隔离模式
EEPlat PaaS支持三种租户的数据隔离技术:Sparce Column.tenantId字段隔离.每一个租户独立数据库. 1)Sparce Column,和Salesforce Appforce ...
- 企业架构研究总结(30)——TOGAF架构内容框架之内容元模型(上)
2. 内容元模型(Content Metamodel) 在TOGAF的眼中,企业架构是以一系列架构构建块为基础的,并将目录.矩阵和图形作为其具体展现方式.如果我们把这些表述方式看作为构建块的语法,那么 ...
- TOGAF架构内容框架之内容元模型(上)
TOGAF架构内容框架之内容元模型(上) 2. 内容元模型(Content Metamodel) 在TOGAF的眼中,企业架构是以一系列架构构建块为基础的,并将目录.矩阵和图形作为其具体展现方式.如果 ...
- 编程学习笔记(第四篇)面向对象技术高级课程:绪论-软件开发方法的演化与最新趋势(4)meta、元与元模型、软件方法的未来发展
一.meta.元与元模型 1.元. "元" 英语是 Meta,meta在不同的行业领域有不同的翻译,在 IT 领域一般来说 Meta 是翻译成元,主要因为在 IT 中Meta ...
- 开源的PaaS平台
原文地址:https://blog.csdn.net/mypods/article/details/9366465 1.Stackato Stackato 是一个应用平台,用来创建私有.安全和灵活的企 ...
随机推荐
- Bug Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
yum -y install gcc 时候报bug: Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7& ...
- python的turtle模块画折线图
代码如下: import turtle yValues = [10.0,7.4,6.4,5.3,4.4,3.7,2.6] def main(): t = turtle.Turtle() t.hidet ...
- Mac Screen Capture Shortcuts
Here's How: To capture the entire desktop, press Command-Shift-3. The screen shot will be automati ...
- JNI之数组
Array Operations -- 数组操作 1.GetArrayLength jsize GetArrayLength(JNIEnv *env, jarray array); Returns t ...
- SonarQube分析报告无法上传的问题
'); 由于SonarQube5.6 api/ce/submit 接口报以下异常,导致jenkins构建结果显示为失败~: Caused by: java.lang.NullPointerExcept ...
- Oracle的取整和四舍五入函数——floor,round,ceil,trunc使用说明
Oracle的取整和四舍五入函数——floor,round,ceil,trunc使用说明 FLOOR——对给定的数字取整数位SQL> select floor(2345.67) from dua ...
- Android集成友盟社会化分享功能
1. 产品概述 友盟社会化组件,可以让移动应用快速具备社会化分享.登录.评论.喜欢等功能,并提供实时.全面的社会化数据统计分析服务. 指南将会手把手教你使用社会化组件SDK,用5分钟为APP增加新浪 ...
- JVM类加载的那些事
原文出处: 占小狼 前言 Java源代码被编译成class字节码,最终需要加载到虚拟机中才能运行.整个生命周期包括:加载.验证.准备.解析.初始化.使用和卸载7个阶段. 加载 1.通过一个类的全限 ...
- 创建 git仓库
首先创建一个文件夹作为git仓库,创建一个test文件夹,并在文件夹下创建一个test.c的文件用以测试: git init git使用git init来初始化一个git仓库,git的很多命令都是在g ...
- 关于JS里的函数作用域链的总结
在JavaScript中,函数的作用域链是一个很难理解的东西.这是因为JavaScript中函数的作用域链和其他语言比如C.C++中函数的作用域链相差甚远.本文详细解释了JavaScript中与函数的 ...