-
Notifications
You must be signed in to change notification settings - Fork 20
Xross Unit编辑器是一个面向后端的通用应用构建器,它采用流程图为系统建模,允许研发人员以所见即所得的方式组合组件。通过它丰富的组件和灵活的操作研发人员可以大大简化开发过程,降低开发难度,更好的平衡工作与生活。你所要做的就是创建流程图,然后实现优雅而简单的组件接口。最棒的是,所有这些都可以在IDE,例如Eclipse或IDEA中完成,无需脱离熟悉的开发环境。
Xross Unit编辑器创建的流程图并不仅仅只是好看,它是真实可运行的系统,可由工厂类创建可运行的实例。我知道你可能会担心什么,与其他工具不同,它不会基于模型文件生成大量辅助代码。相反,工厂类通过解析模型文件自动创建实例。由于没有代码生成,它避免了潜在的模型和代码同步的麻烦。
此外,通过将系统构建和组件实现分离,它自然地将设计和实现阶段分离。利用组件分解任务的做法也会鼓励研发人员进行组件重用。除此以外,它还能够:
- 允许开发人员思考/工作/交流
- 在组件级别而不是代码级别-是的,我们讨厌看代码,尤其是其他人的代码
- 从业务逻辑的角度,而不是从代码的角度——当我们脱离代码层面时,这是一个自然的结果
- 提供灵活的系统建设方式
- 丰富的组件:Processor、Converter、Validator、Locator
- 丰富的结构:Chain、If-else、Branch、While、Do-while循环、Decorator、Adapter
- 灵活的操作:看看将一个组件放置在另一个组件上会发生什么
- 别忘记还可以通过属性定制行为
- 消除从顶层设计到具体实施的翻译工作
- 流程图不是为PPT创建的,而是在系统中运行的模型
- 更改流程图将直接更改系统。没错,你可以在不改一行代码的情况下更改你的系统。
- 提高沟通效率
- 大多数开发人员都理解流程图,向他们展示这些很酷的图,看看他们会有多羡慕
- 因为流程图很容易解释,可以把它展示给像产品经理这样的非研发用户,这样各方人员可以更容易的达成共识
- 光看流程图还不放心?没问题,只要简单地双击一下,你就可以随时跳转到代码中获取更多细节,简直完美
流程图是由节点、结构和链接组成的单入单出图。它说明了如何处理传入请求。任何遵循IPO(输入/过程/输出)模型的系统都可以用流程图进行建模。一个系统可以简单到只是带一个节点的图,也可以是具备多个节点的多个图。
OOAD是一种常见的系统设计和开发方法。但它有点难以使用,并且比较缺乏熟练的设计/开发人员。原因是:
- OOAD很难学习。如果你仔细研究我们的代码,你会发现大多数类/接口设计的不是很好。这是因为OOAD是一门需要多年专注训练才能打磨的艺术。事实上,并不是每个开发人员都擅长OOAD。
- 类图不善于从动态的角度来表示系统。通过类图很难理解系统的动态特性。开发人员更想知道是谁,在什么时候,做什么,但类图只向他显示了每个实体的依赖关系
- 序列图也有同样的问题。序列图的问题在于它擅长描述一个特定的处理,但不擅长描述分支和循环处理
有以下几方面:
- 易于沟通。很清楚地表明谁在什么时候做什么(路径)。你不需要多年的培训(比如阅读类图)就能理解它。它也很适合与PM、QA甚至最终用户沟通
- 鼓励关注领域需求。使用Xross Unit编辑器创建流程图,就有了一个良好的设计开局,因为它已经完成了大部分系统级类的设计和组件划分。编辑器允许开发人员使用预定义的组件来自由构建系统框架,这种操作的灵活性会节省大量的设计时间,并有助于让开发人员更专注于业务领域。有关这些预定义组件的接口,请参阅以下部分。
- 可以以JIT的方式验证系统。所有组件在创建时都会绑定默认实现,因此您可以在一秒钟内构建并运行系统。
一个Node(节点)表示专注于做什么的单个步骤。例如“转换输入”或“创建HTML”。它可以是:
- Primary node:实现Processor, Converter Decorator, Validator或Locator接口的类。
- Reference node:对另一个流程图或节点的引用。
一个Structure(结构)表示将多个节点组合在一起的复杂节点。
-
Chain:包含多个节点或结构的容器。它们将作为定义的序列逐一调用
-
Bi-Branch:一个验证器节点和两个节点,有效节点和无效节点。验证器将决定调用哪个节点
-
Branch:在定位器节点和几个节点上。定位器将决定调用哪个节点
-
Pre-validating loop:while循环
-
Post-validating loop:do-while循环
-
Decorator:可调用装饰单元前后的附加处理
-
Adapter:将已适配的单元更改为其他类型
- 使用编辑器构建系统
- 保存模型文件
- 在您的java代码中,使用XunitFactory基于模型文件创建系统
- 构造参数并调用创建的系统