元素化设计原理及规则v1.0
一、元素设计架构
元素设计架构展示在基于元素化设计的思想下,系统各元素之间如何相互协作,并完成整个系统搭建。
架构中以Entity(数据)为中心,由Entity产生数据库表结构,并且Entity作为业务数据在Logic元素、UI元素之间流程转完成业务逻辑,最终通过Logic元素将Entity持久化于数据库。

二、元素组织结构
元素组织结构描述各个元素的划分及定义原则,使设计人员、开发人员在元素化开发思想的实现过程中保持一致,使开发的元素得到良好的组织并具可控性。
1、Entity(数据)
Entity定义业务数据结构,并自动产生数据表结构。基Entity完成所有子Entity的共有属性,子Entity根据不同业务功能产生不同业务的Entity,实现具体的业务属性。
Entity作为系统中的业务数据载体,负责承载一个业务功能所需要的所有数据,并在UI元素、Logic元素之间传递。

2、Logic(业务)元素
Logic(业务)元素接受、处理、输出(持久化)当前业务的Entity元素。基Logic完成所有子Logic元素的共有I/O(属性、功能),子Logic元素实现具体业务,不同业务产生新的Logic元素不同。

3、UI元素
UI元素根据Entity元素自动产生用户界面。由于用户界面的多样性但是又存在一定的重复性,因此将UI元素在可重复性的层次上进行抽象,定义出如:UIList、UIDetail、UIWorkFlow等UI元素。当出现新的未定义用户界面时将产生新的UI元素。
所有UI元素在都可以在更高层次上进行再抽象,故定义UI基元素,所有UI元素都直接或间接继承于UI基元素。

4、公共元素
公共元素是指所有元素都可以使用的公有元素,如:SqlHelper、系统框架、Commn(共有小功能)等。
元素化设计原理及规则v1.0的更多相关文章
- 社会单位消防安全户籍化管理系统——半自动提交V1.0版本
社会单位消防安全户籍化管理系统——半自动提交V1.0版本 首先先上代码,开发这个小程序其实是用来帮助同事完成一项每天都做的繁琐事件,以往需要花费十分钟做这件事情,现在就是傻瓜式,点几下鼠标就好了.本来 ...
- Eclipse+Selenium自动化测试脚本设计V1.0
Eclipse+Selenium自动化测试脚本设计V1.0 http://www.docin.com/p-803032251.html
- UPX3.03+UpolyX.5 Shell v1.0 汉化绿色版
软件名称:UPX3.03+UpolyX.5 Shell v1.0 汉化绿色版软件类别:汉化软件运行环境:Windows软件语言:简体中文授权方式:免费版软件大小:635 KB软件等级:整理时间:201 ...
- 基于swoole框架hyperf开发的纯API接口化的后台RBAC管理工具hyperfly@v1.0.0发布
hyperfly@v1.0.0发布 本文地址http://yangjianyong.cn/?p=323转载无需经过作者本人授权 github地址:https://github.com/vankour/ ...
- Omi v1.0震撼发布 - 令人窒息的Web组件化框架
原文链接--https://github.com/AlloyTeam/omi 写在前面 Omi框架经过几十个版本的迭代,越来越简便易用和强大. 经过周末的连续通宵加班加点,Omi v1.0版本终于问世 ...
- Omi v1.0震撼发布 - 开放现代的Web组件化框架
原文链接--https://github.com/AlloyTeam/omi 写在前面 Omi框架经过几十个版本的迭代,越来越简便易用和强大. 经过周末的连续通宵加班加点,Omi v1.0版本终于问世 ...
- Python WSGI v1.0 中文版(转)
add by zhj: WSGI全称Web Server Gateway Interface,即Web网关接口.其实它并不是OSI七层协议中的协议,它就是一个接口而已,即函数,而WSGI规定了该接口的 ...
- Spring IOC设计原理解析:本文乃学习整理参考而来
Spring IOC设计原理解析:本文乃学习整理参考而来 一. 什么是Ioc/DI? 二. Spring IOC体系结构 (1) BeanFactory (2) BeanDefinition 三. I ...
- 【C++】从设计原理来看string类
1.一些C++基础知识 模板类string的设计属于底层,其中运用到了很多C++的编程技巧,比如模板.迭代器.友元.函数和运算符重载.内联等等,为了便于后续理解string类,这里先对涉及到的概念做个 ...
随机推荐
- DxPackNet 3.音频捕捉(录音)
用DxpackNet捕捉音频其实很简单 1.初始化控件 IDxMicrophCapture microphone; private void Form1_Load(object sender, Eve ...
- 算法提高 金属采集 树形DP
题目链接:金属采集 思路:d(i, j)表示在以i为根结点的子树中使用j个机器人的最小花费.设v为u的一个子节点,从节点i使用k个机器人收集以v为根结点的能量,状态转移方程为d(u, i) = min ...
- SpringBoot SpringSecurity4整合,灵活权限配置,弃用注解方式.
SpringSecurity 可以使用注解对方法进行细颗粒权限控制,但是很不灵活,必须在编码期间,就已经写死权限 其实关于SpringSecurity,大部分类都不需要重写,需要的只是妥善的配置. 每 ...
- openstack-ocata-环境准备1
Openstack环境准备1. 最少两台机器2. Controller:1核cpu 4G内存 5G硬盘3. Computer:1核cpu 2G内存 10G硬盘4. 至少两个网卡,本次采用四个网卡(1网 ...
- 2015最全iOS开发自学视频资料(基础+实战)
最全的iOS自学视频,包括c,objective-c,UI等等,没有你找不到的,只有你学不会的,只要你想学,这里都有你所需要的. 推荐教程点这里:http://www.mobiletrain.org/ ...
- caffe+GPU︱AWS.G2+Ubuntu14.04+GPU+CUDA8.0+cudnn8.0
国服亚马逊的GPU实例G2.2xlarge的python+caffe的安装过程,被虐- 一周才装出来- BVLC/caffe的在AWS安装的官方教程github: https://github.com ...
- 3.3.4 PCI设备进行DMA写时发生Cache命中
如果PCI设备访问的地址在某个CPU的Cache行中命中时,可能会出现三种情况. 第一种情况是命中的Cache行其状态为E,即Cache行中的数据与存储器中的数据一致:而第二种情况是命中的Cache行 ...
- linux 更改用户的默认shell
由于卸载了zsh.导致用户的bash没有更新 用户无法登录.后来通过grup更改.修改/etc/passwd中的用户的shell成功 将下面的红色的更改成bash即可. root:x:::root:/ ...
- 深度学习word2vec笔记之基础篇
作者为falao_beiliu. 作者:杨超链接:http://www.zhihu.com/question/21661274/answer/19331979来源:知乎著作权归作者所有.商业转载请联系 ...
- CAN总线简介
CAN总线简介 个节点,通信波特率为5Kbps~1Mbps,在通信的过程中要求每个节点的波特率保持一致(误差不能超过5%),否则会引起总线错误,从而导致节点的关闭,出现通信异常.