01、序列、流程图、状态机的区别
首先序列、流程图及状态机都是容器性组件,都可以用来对一些特定组件实现的业务功能进行分组,那么他们之间的区别到底是什么?我们在流程开发时该怎么做区分?接下来介绍这三者区别:序列能够让我们可以将多个组件以线性方式组成流程,即在序列中实现的流程没有箭头指向,流程自上而下运行,业务逻辑简单明了,所以通常用来分组简单的业务流程。举例如下:
流程图则能实现相对复杂逻辑的业务流程,组件之间用连线连接,流程以箭头指向运行,同一个组件在对应的逻辑条件下可执行多次。
举例网页登录场景:通常我们在登录之前需要判断网页是否已登录,如果已登录状态,则不需要输入用户名及密码,即登录模块功能的流程可运行结束;如未登录,则需要输入用户名、验证码及点击登录按钮,然后再进行判断是否登录成功,流程示例如下:
附登录功能流程如下(序列方式):
从以上示例可见,当业务需要进行一些逻辑判断规则时,我们采用流程图方式实现会比序列更加清晰明了;当流程没有任何逻辑判断时我们采用序列