Gemini.Workflow 双子工作流正式上线(支持.NET Core)

2023-11-07 20:40

本文主要是介绍Gemini.Workflow 双子工作流正式上线(支持.NET Core),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

接触工作流:

最早接触工作流,是在04年左右,那年,我创造了 Aries 框架的前身第一版框架,另一个同事,创造了工作流的第一版框架。

只是那时候,我并未参与工作流的核心设计,仅仅是帮写了个流程设计器,就是下图这个怀旧的样子:

然后提供一些(撤回、退回)回收算法的意见。

并提供:CYQ.Data 的源码作为底层数据层,那时候还没开源 CYQ.Data。

悲催的是,同事拿到 CYQ.Data 框架的源码,却把它打散了,没用MAction,只用MProc,并来了个二次封装,把sql语句搞了一堆配置的xml文件,估计是被mybatis毒害了。以至于后来,有一个项目要用到oracle时,呵呵就两个字:好在手头上还有旧版本的源码,把报错的xml配置Sql文件重写,把相关调用视图语句也重写,勉强在当时的项目流程里不报错。配置的xml语句太多,全部检测和重写不现实,毕竟对工作流框架一丁点都不熟。

估计那时候的人年轻啊,所谓的支持多数据库,都是喜欢这么坑人的,

就像现在,喜欢用Dapper的,玩玩支持单数据库还可以,若是支持多数据库,那也是一个大坑。

了解工作流:

说起来,当年,那么多项目都用到工作流,我却没有涉入,连怎么使用都没学,更别说了解工作流框架的核心思想了。

只是后来,那个oracle项目,让我不得不接触工作流,因为报错啊!

那时候的我还在全力重写Aries,作为技术支持,我只好稍为了解下工作流。

不了解还好,一了解就头大,这代码,这命名,这逻辑,我槽,跟我高中时读英文作文有啥区别,一圈下来,就三字:看不懂。

好在,有时候解决问题,并不需要你懂它,只要运行,看到哪里报错,把报错相关的地方,修改一下就可以了。

后来,Aries上线了,不过却没有配套工作流,因为机制不一样,Aries的纯天然html,和早期工作流的aspx,ascx不协调。

重构或重写工作流?

开始想重构,不过在前前后后看了一个多月的源码后,就放弃了,旧同事能把代码写的天然带混淆效果,我也是服了。

放弃了重构,按自己的思维,重写吧,新重写的工作流初命名是叫:Scorpio(天蝎座)才刚设计好数据库,写了个开头,就被各种事情打断了,然后妖折了。

这重构和重写是有区别的:

重构,是需要了解原作者的思路,并逐步进行改进,或重写。重写:不需要了解原作者的思路。

后来,工作流这事就放下了,放下了好几年。

直到去年,老东家让我帮解决工作流上的一个问题,

毕竟当年框架的原始作者已经离开了,二次接手维护的人,也离开了,估计也没人敢三次接手维护了。

因此又让我重拾了工作流了:

又看那天书般的工作流代码,唉,好在一周后,感觉好像看懂了一些,问题也帮解决了〜

掐指一算:是时候为 Aries 配上工作流了

前前后后,接触和了解工作流也好几年了。

Aries也出来很多年了,是时候配上工作流了。

于是,动手了,只是没想到,两个多月,无眠不休,才重写完。

除了流程图的样式有所保留,其它代码全部重写了: 

关于框架取名:Gemini.Workflow,简称:双子流 

终于,十二宫,迎来了新的成员:Gemini(双子座)

嗯,现在已经集齐四个,还差八个就可以招唤雅典娜了:

Aries(白羊座):.NET Develop Framework(适合场景:业务系统、内部信息系统、后台管理系统、ERP,支持.NET Core)

Taurus(金年座):Taurus.Mvc(适合场景:对性能和并发有较高要求的电商、站点、WebAPI等系统,支持.Net Core)

Gemini(双子座):Gemini.Workflow 使用简单,功能强大的工作流框架。

Sagit(射手座,Sagittarius):IOS Develop Framework(Sagittarius 射手座:IOS下的一套基础快速开发框架)

入门教程:

1、Gemini.Workflow 双子工作流入门教程一:定义流程:流程图属性

2、Gemini.Workflow 双子工作流入门教程二:定义流程:流程节点介绍

3、Gemini.Workflow 双子工作流入门教程三:定义流程:流程节点、迁移条件参数配置

4、Gemini.Workflow 双子工作流入门教程四:流程应用

5、Gemini.Workflow 双子工作流入门教程五:业务表单开发

API文档:

后端:Gemini.Workflow API 文档和 前端: Gemini.Workflow.js API 文档:

https://github.com/cyq1162/Aries/tree/master/Aries.Document

总结:

目前 Gemini.Workflow 双子流是配套在 Aries 中,两者结合,成为更加强大的业务系统基础开发框架。

演示地址:http://aries.cyqdata.com 

框架地址:https://github.com/cyq1162/Aries

 

转载于:https://www.cnblogs.com/cyq1162/p/10897685.html

这篇关于Gemini.Workflow 双子工作流正式上线(支持.NET Core)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/366165

相关文章

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

Go语言使用net/http构建一个RESTful API的示例代码

《Go语言使用net/http构建一个RESTfulAPI的示例代码》Go的标准库net/http提供了构建Web服务所需的强大功能,虽然众多第三方框架(如Gin、Echo)已经封装了很多功能,但... 目录引言一、什么是 RESTful API?二、实战目标:用户信息管理 API三、代码实现1. 用户数据

在ASP.NET项目中如何使用C#生成二维码

《在ASP.NET项目中如何使用C#生成二维码》二维码(QRCode)已广泛应用于网址分享,支付链接等场景,本文将以ASP.NET为示例,演示如何实现输入文本/URL,生成二维码,在线显示与下载的完整... 目录创建前端页面(Index.cshtml)后端二维码生成逻辑(Index.cshtml.cs)总结

解决hive启动时java.net.ConnectException:拒绝连接的问题

《解决hive启动时java.net.ConnectException:拒绝连接的问题》Hadoop集群连接被拒,需检查集群是否启动、关闭防火墙/SELinux、确认安全模式退出,若问题仍存,查看日志... 目录错误发生原因解决方式1.关闭防火墙2.关闭selinux3.启动集群4.检查集群是否正常启动5.

setsid 命令工作原理和使用案例介绍

《setsid命令工作原理和使用案例介绍》setsid命令在Linux中创建独立会话,使进程脱离终端运行,适用于守护进程和后台任务,通过重定向输出和确保权限,可有效管理长时间运行的进程,本文给大家介... 目录setsid 命令介绍和使用案例基本介绍基本语法主要特点命令参数使用案例1. 在后台运行命令2.

Java中的xxl-job调度器线程池工作机制

《Java中的xxl-job调度器线程池工作机制》xxl-job通过快慢线程池分离短时与长时任务,动态降级超时任务至慢池,结合异步触发和资源隔离机制,提升高频调度的性能与稳定性,支撑高并发场景下的可靠... 目录⚙️ 一、调度器线程池的核心设计 二、线程池的工作流程 三、线程池配置参数与优化 四、总结:线程

解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题

《解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题》:本文主要介绍解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4... 目录未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘打开pom.XM

SpringBoot集成LiteFlow工作流引擎的完整指南

《SpringBoot集成LiteFlow工作流引擎的完整指南》LiteFlow作为一款国产轻量级规则引擎/流程引擎,以其零学习成本、高可扩展性和极致性能成为微服务架构下的理想选择,本文将详细讲解Sp... 目录一、LiteFlow核心优势二、SpringBoot集成实战三、高级特性应用1. 异步并行执行2