元素化设计原理及规则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 条评论
登录 后参与评论

相关文章

来自专栏韩伟的专栏

你真的理解数码技术吗?(二)

1.2 文字是如何用数字来记录的 在人类创造的各种信息当中,文字信息一直被我们认为是知识和智慧的重要载体,古代无数僧侣和学者,终身都献身于书籍文字的保存和传达...

3468
来自专栏编程微刊

JavaScript基础

1572
来自专栏编程

十步零基础JavaScript学习路径

之前写过一篇26天学通前端开发,内容主要讲的就是前端学习路径,今天再来写一篇零基础的JavaScript学习路径,希望能帮编程零基础的前端爱好者指明方向。 开发...

2029
来自专栏Java技术分享圈

给一些想要学习Java同学的一些建议

最近在授课过程中,发现了各式各样学生在学习Java时遇到的问题。有同学会问我:“杨老师,Java可以自学吗”,这就好像一千个人心中有一千个哈利波特一样,这个答案...

1011
来自专栏CDA数据分析师

飞跃式发展的后现代 Python 世界

如果现代Python有一个标志性特性,那么简单说来便是Python对自身定义的越来越模糊。在过去的几年的许多项目都极大拓展了Python,并重建了“Python...

2076
来自专栏Android 开发者

[译] Kotlin 揭秘:理解并速记 Lambda 语法

在奥地利旅行期间,我参观了维也纳的奥地利国家图书馆。特别是国会大厅,这个令人惊叹的空间感觉就像印第安纳琼斯电影中的一些东西。房间周围的空间是这些门被装在架子上,...

850
来自专栏微信公众号:Java团长

Java编程的21个常见错误

代码重复几乎是最常见的异味了。他也是Refactoring 的主要目标之一。代码重复往往来自于copy-and-paste 的编程风格。与他相对应OAOO 是...

973
来自专栏java工会

深度思考编程的艺术

1728
来自专栏何俊林

Android Multimedia框架总结(十)Stagefright框架之音视频输出过程

前言:上篇文中最后介绍了数据解码放到Buffer过程,今天分析的是stagefright框架中音视频输出过程: 先看下今天的Agenda: 一张图回顾数据处理...

2248
来自专栏程序员的诗和远方

20180803_ARTS_week06

这个是个比较不好的解法,就是像题目介绍里面那样先把这个『之』字形给做出来,然后再逐行读成字符串,但是通过这个比较好帮助我们理解这个题目。

901

扫码关注云+社区