元素化设计原理及规则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(共有小功能)等。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java成神之路

Java_String_01_由转义字符串得到其原本字符串

在开发企业微信电子发票之拉取电子发票接口的时候,微信服务器会发送给我们一个2层的转义字符串,而我们要想得到我们想要的结果,就需要进行一些处理:

793
来自专栏Timhbw博客

Markdown基本语法-自学收藏

2016-05-0918:27:15 发表评论 318℃热度 1.标题 2.待办事项 3.缩写定义 4. 文字格式 5.无序列表 6.有序列表 ...

26211
来自专栏Python专栏

Python | 一道神奇的Python面试题,你会吗?

怀疑了人生半天,本来还想黑,WTF Python…然后才想通是自己太生疏......

993
来自专栏IMWeb前端团队

单元测试 & mocha 简述

单元测试 & mocha 简述 1. 单元测试 单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证 这个最小测试单元,可以是一个函...

2019
来自专栏hightopo

原 HT for Web中3D流动效果的实

1513
来自专栏王亚昌的专栏

Google C++ 风格指南 - 中文版 [值得收藏]

http://yangyubo.com/google-cpp-styleguide/ 很实用的手册,感觉象是effective c++,但其中明确指出了一些...

651
来自专栏IMWeb前端团队

animation动画实践

由于业务关系,有幸参与腾讯课堂app下载页面制作,原则上ie8、9可表现为静态版本,而高级浏览则为动画版本。在这把一些重要思想和中间遇到的一些问题记录下,以供知...

1870
来自专栏北京马哥教育

浅入深谈:一道Python面试题,让我明白了殊途同归,却开始怀疑自己

怀疑了人生半天,本来还想黑,WTF Python…然后才想通是自己太生疏......

1074
来自专栏Java爬坑系列

类的进化史

  类无疑是C++最重要的概念之一,是从C的面向过程到C++面向对象的重要转变的基础,下面我们就来谈谈C++中的类是怎样演变的。   先来看看C中的结构体(st...

2115
来自专栏mySoul

测试用例概念 原则

测试用例为一组条件或变量,根据其来确定应用软件是否能够正常的工作。其条件和变量为测试用例。

722

扫码关注云+社区