​通用代码生成器典型应用场景​

​通用代码生成器典型应用场景​

1. 通用代码生成器简介

通用代码生成器或称动词算子式通用代码生成器,是一系列各种语言的易用的整站式代码生成器。其根本原理是把方法分解成动词算子和域对象的笛卡儿积。根据动词算子式代码生成器的基本原理。所有方法,都是动词算子和域对象的结合。是一个表级抽象的方法堆栈。域对象代表一张数据库表。在动词算子式代码生成器的默认里,域对象有ID,Name和Active三个特殊字段。而动词算子需要的表,字段的信息都打包在域对象里,这就是表级抽象。动词算子也有不同的类别,比如单域动词和双域动词。单域动词需要结合一个域对象。而双域动词需要结合两个域对象。通用代码生成器阵列支持四个双域动词,Assign,Revoke,ListMyActive和ListMyAvailableActive都是为支持域对象之间的多对多关系准备的。

通用代码生成器的优点是弹性,准确性和整站生成的高劳动生产率。这是由动词算子式代码生成器的基本原理决定的。一般而言,其前端和后端代码生成器都可以直接运行。没有编译错误。非常方便。主力的通用代码生成器可以同时生成两个压缩包,一个是前端代码生成物,一个是后端代码生成物。都可以直接编译运行,提供了完整的代码生成的源代码。非常方便使用。

以下是常见的动词算子式代码生成器:

无垠式代码生成器

无垠式代码生成器JEEEU版 https://gitee.com/jerryshensjf/InfinityJEEEU

无垠式代码生成器https://gitee.com/jerryshensjf/InfinityGPGenerator

无垠式代码生成器SimpleJEE版https://gitee.com/jerryshensjf/InfinitySimpleJEE

和平之翼代码生成器

和平之翼代码生成器SMEU版:https://gitee.com/jerryshensjf/PeaceWingSMEU

和平之翼代码生成器SHCEU版:https://gitee.com/jerryshensjf/PeaceWingSHCEU

第三代动词算子式代码生成器:光

https://gitee.com/jerryshensjf/LightSBMEU

第四代动词算子式代码生成器:时空之门前端代码生成器

https://gitee.com/jerryshensjf/GatesCore

GO 语言通用代码生成器:仙童

https://gitee.com/jerryshensjf/Fairchild

Java 通用代码生成器:阿拉丁神灯

https://gitee.com/jerryshensjf/Lamp

Rust 通用代码生成器:莲花

https://gitee.com/jerryshensjf/Lotus

下面是六个常见的通用代码生成器应用场景

2. 项目前期

通用代码生成器是一种自动化编程软件,是一种先进的编译系统。它具有表级抽象。把系统抽象为域对象,枚举,弹性登录模块,复杂版面和图形报表。使用通用代码生成器完成项目前期,比直接使用对应的高级语言快的多,也方便的多。

在常规的项目开发阶段,可以分为前期,中期和后期。前期完成设计,数据库设计,项目初始化,数据库初始化和CRUD等常用功能的开发。

中期是各种业务功能的开发。

业务功能开发完成后,项目即进入后期。后期主要是测试,修错。完成项目Change Request和基线化,代码冻结。构建软件发布包,给客户安装,用户培训等等。

当客户签章认可软件交付物,软件的开发阶段就结束了,进入了软件的售后服务阶段。

通用代码生成器对软件开发而言,在项目前期的价值最大。它可以把月余的项目前期压缩到短短数日。从而为您的设计和开发增加数周的时间。用于设计,您可以更加详细。用于开发,大大缓解开发时间的紧张。而且,由于通用代码生成器的高生产率,您可以采用多轮设计,采用迭代式的项目设计循环,使设计阶段结束时,系统更全面更一致,同时仍然可以节约数周的时间帮助开发阶段。

通用代码生成器为项目全周期迭代式的使用通用代码生成器做了优化。它可以精确的控制代码生成物。可以按水平层级或者按竖直功能选择性的输出代码生成物,并可以同时使用水平和竖直的控制功能。最强大的是,您可以上传同一个项目的不同时期的SGS2模板,系统会对比两个版本,自动生成两个版本的差异部分,而一致的,它不输出。利用这个功能,您可以定向,只修改更改的部分,结合归并工具的功能,可以成数量级的提高劳动生产率。

3. 快速原型

对项目经理,产品经理和售前工程师而言,开发快速原型是一种常见的需求。使用通用代码生成器,您可以更好,更快的开发系统的快速原型。通用代码生成器对完成CRUD和登录系统阶段的快速原型比手工编程快的多,典型情况,您可以使用一天时间完成如此规格的快速原型,而直接编程,您可能至少需要两周时间才可以达到同样的完成度。故使用通用代码生成器,您可以更快的完成快速原型,您也有更多的时间,使您的原型达到更高的完成度。

并且,通用代码生成器有专门为快速原型设计的哑数据模式。此模式不使用数据库,而是使用硬编码的哑数据作为数据来源,它方便您给不同的客户多次演示,不需要担心数据遗留问题。只需要重新启动,数据即回归到原始数据,没有搞错演示数据的烦恼。而且,您可以和您的客户共享此快速原型。客户可以深入研究此快速原型,但无法直接使用此快速原型,因为此快速原型没有数据持久化功能。对双方都很方便。

4. 遗留项目反向工程

如果您有一个遗留项目,要重新开发,或者源代码遗失,或者需要重新开发,但是希望复用原来的数据,并加快开发。

如果您的项目是通用代码生成器生成的,如果您保留了它的SGS源文件或SGS2的Excel模板,您可以使用这些资源重新生成。

但是大多数遗留项目都没有这些资源,或者本来就不是通用代码生成器生成的。这种情况下,您只需要有系统的数据库,并且,这个数据库是MariaDB,MySQL或者PostgreSQL的。您就可以使用Rust通用代码生成器莲花的数据库自动反射功能来反向工程这种遗留项目。借助这个功能,您可以把一个数据库反射为一个莲花的Project。并可以进一步将数据库反射为一个Rust语言项目或者一个莲花的SGS2模板。

借助Java通用代码生成器光和Golang通用代码生成器仙童的Rust语言兼容性。您可以把这个莲花的SGS2模板生成为Java语言项目或Golang语言项目。

这个数据库自动反射功能可以保留原系统的数据,您不需要重新开始。

5. 跨编程语言翻译

如果您有一个Java工程,想把它移植到Rust或Golang语言中去,希望尽可能加快研发速度。

如果您的系统是通用代码生成器开发的,保留了系统的SGS源文件或者SGS2的Excel模板,您可以使用这些源文件或模板结合您的目标语言生成新语言的代码生成物,以加速新语言的应用程序的开发。

如果您没有保留此源文件或模板,或者您的应用系统是手工搭建的或使用了其他来源。您可以使用数据库自动反射功能达到需求。如果您使用的是MariaDB,MySQL或者PostgreSQL。您可以使用Rust通用代码生成器莲花新版本的数据库自动反射功能,将数据库反射成Rust应用程序,您也可以将数据库反射为一个SGS2的Excel模板。而后通过Java通用代码生成器光或Golang通用代码生成器的Rust语言兼容性功能,将此SGS2模板编译成Java或Golang的应用程序,在此过程中,您可以保留数据库中的所有数据,不必从零开始。

6. 任意需求应用急就章

在中国文化中,如果您在任何的政府,商业或者私人事务上需要表明身份。您需要一枚自己的私章。如果在必须的场合,您没有此私章。如果您知道如何刻写图章,可以临时使用普通的石料甚至萝卜,肥皂等等,刻写一个临时性的图章使用,这就是所谓的急就章。

通用代码生成器也有类似功能。如果您有一个业务或者需求,但是您没有现成的电子商务系统,您往往是使用Excel表格或者Acess数据库来完成这些功能的簿记和管理工作。但这种方法有明显缺陷,首先,如果随着业务的流转,多人手头有不同的Excel表单,如果数据不一致,您很难找出正确的答案,而且,没有统一的密码和登录系统,容易泄密和忘记密码。

有了通用代码生成器,可以完美的解决这一问题。您可以利用和写一个Excel表单同等的时间写一个SGS2的Excel模板,利用代码生成器生成一个系统临时凑和着用,几乎是零成本的。您可以轻易的拥有数据库管理系统的全部优势,就是特定功能少一些而已,而数据库的簿记功能可以完美的使数据一致性问题,多人同步工作问题完美解决。同时,您零成本的拥有了一个完善的系统的密码和登录系统,每个人可以维护自己的密码,而系统管理员也可以有效的管理,支持和急救。

所以,通用代码生成器的代码生成物是可以直接使用的,它有完善的通用功能,就是没有定制功能而已,对于任何需求,这种代码生成物都远远优于Excel表格,而成本是一样的。通用代码生成器的代码生物可以完成完善的电子商务系统70%的功能。这就是通用代码生成器的急就章功能。

7. 为完善的应用系统收集需求

使用急就章功能可以开发一个简单的应用先凑和着使用。此应用系统也可以成为完善的应用系统的原型和祖先。如果您新规划一个完善的应用系统,您可以先使用通用代码生成器生成一个临时使用的系统,并在实际的使用中收集需求和现用系统的不足,然后您可以使用手工编程完善此系统,得到一个完善的应用系统。

使用数据库自动反射功能,您可以把原型系统内的您需要的数据迁徙到新的完善的应用系统,而不必从零开始。

8.初学者学习使用

通用代码生成器是一种非常方便初学者学习软件开发的得力工具。

对初学者而言,最需要的就是完整,准确和可以运行的示例程序,尤其是初学者的“第一个系统”。而通用代码生成器在这方面,对初学者有极大的帮助。

当初学者完成了他的Hello world。他可以使用通用代码生成器的示例,比如说One示例,生成一个只有一个域对象的简单系统。他可以得到两个压缩包,分别是One示例的后端和前端。利用这两个例程,初学者可以熟悉某个语言,某个技术栈的完整的后端技术。也可以熟悉和后端搭配使用的运行在Nodejs上的Vue,ElementUI的独立前端。初学者可以运行,抄写,并复现此示例。

当初学者学习完基础示例的CRUD。就可以使用带登录系统的示例进一步学习和抄写。比如CivMariaSample示例。相比于One示例,它要大型的多。包含登录系统,复杂版面和图形报表,还有多对多关系。当初学者完成对此示例的抄写,他就不再是初学者了,他已经入门了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/887842.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

网 络 安 全

网络安全是指保护网络系统及其所存储或传输的数据免遭未经授权访问、使用、揭露、破坏、修改或破坏的实践和技术措施。网络安全涉及多个方面,包括但不限于以下几个方面: 1. 数据保护:确保数据在传输和存储过程中的完整性和保密性,…

[Python] 《人生重开模拟器》游戏实现

文章目录 优化点一:多元化的天赋系统示例天赋:天赋选择代码: 优化点二:更加多样化的随机事件年龄阶段划分:随机事件代码: 优化点三:设定人生目标人生目标示例:人生目标代码&#xff…

python爬虫 - 初识requests模块

🌈个人主页:https://blog.csdn.net/2401_86688088?typeblog 🔥 系列专栏:https://blog.csdn.net/2401_86688088/category_12797772.html 前言 requests 是一个用于发送 HTTP 请求的 Python 库,设计简单且功能强大&am…

如何创建虚拟环境并实现目标检测及验证能否GPU加速

创建虚拟环境: 先创建一个虚拟python环境,敲如下代码 然后再到该虚拟环境里面安装自己想要的包 激活虚拟环境 然后再聚类训练这些 验证GPU加速 阿里源 pip install torch torchvision -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mir…

B树系列解析

我最近开了几个专栏,诚信互三! > |||《算法专栏》::刷题教程来自网站《代码随想录》。||| > |||《C专栏》::记录我学习C的经历,看完你一定会有收获。||| > |||《Linux专栏》&#xff1…

YOLO11改进|卷积篇|引入线性可变形卷积LDConv

目录 一、【LDConv】卷积1.1【LDConv】卷积介绍1.2【LDConv】核心代码 二、添加【LDConv】卷积2.1STEP12.2STEP22.3STEP32.4STEP4 三、yaml文件与运行3.1yaml文件3.2运行成功截图 一、【LDConv】卷积 1.1【LDConv】卷积介绍 下图是【LDCNV】的结构图,让我们简单分析…

鸿蒙HarmonyOS开发生态

1、官网 华为开发者联盟-HarmonyOS开发者官网,共建鸿蒙生态 2、开发工具IDE下载及使用 https://developer.huawei.com/consumer/cn/ 3、使用帮助文档 4、发布到华为应用商店 文档中心

多模态大语言模型(MLLM)-Blip2深度解读

前言 Blip2是一个多模态大语言模型,因其提出时间较早(2023年),且效果较好,很快成为一个标杆性工作。Blip2中提出的Q-former也成为衔接多模态和文本的重要桥梁。 Blip2发表时间是2023年,现在引用已经3288了…

事件抽取(Event Extraction, EE)

一、引言 事件抽取(Event Extraction, EE)是信息抽取领域中的一个重要任务,旨在从非结构化文本中识别和抽取事件相关的信息。事件抽取通常包括识别事件触发词、事件类型以及事件中的参与者、时间、地点等元素,最终将这些信息结构…

常见的基础系统

权限管理系统支付系统搜索系统报表系统API网关系统待定。。。 Java 优质开源系统设计项目 来源:Java 优质开源系统设计项目 | JavaGuide 备注:github和gitee上可以搜索到相关项目

【含文档】基于Springboot+Android的房屋租赁App(含源码+数据库+lw)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 系统定…

【JavaEE】【多线程】进程与线程的概念

目录 进程系统管理进程系统操作进程进程控制块PCB关键属性cpu对进程的操作进程调度 线程线程与进程线程资源分配线程调度 线程与进程区别线程简单操作代码创建线程查看线程 进程 进程是操作系统对一个正在运行的程序的一种抽象,可以把进程看做程序的一次运行过程&a…

IMS添加实体按键流程 - Android14

IMS添加实体按键流程 - Android14 1、实体按键信息(Mi 9 左侧实体按键)2、硬件添加2.1 内核添加设备节点2.2 Generic.kl映射文件2.3 映射文件文件加载loadKeyMapLocked2.4 addDeviceLocked 添加设备相关对象 3、keycode对应scankode4、KeyEvent.java 添加…

京东云主机怎么用?使用京东云服务器建网站(图文教程)

京东云主机怎么用?非常简单,本文京东云服务器网jdyfwq.com使用以使用京东云服务器搭建WordPress博客网站为例,来详细说下京东云主机的使用方法。使用京东云服务器快速搭建WordPress网站教程,3分钟基于应用镜像一键搞定&#xff0c…

python之详解字符串

由字符组成的序列,可以用单引号或双引号括起来。 1、通过下标获取字符串的字符 1.1、获取单个字符 若要获取字符串中某一个字符,可以通过 字符串名[index] 索引下标的方式获取。 索引的初始值为0,最大值为字符串长度-1。 切记&#xff0…

一、图解C#教程

一、堆和栈 程序运行时,数据存储在内存中。 使用堆和栈来存储数据 1、栈 栈是一个内存数组,先进后出原则。 可以存储:某些类型变量的值;程序当前执行环境;传递给方法的参数; 入栈:把数据放…

自动驾驶-问题笔记-待解决

参考线的平滑方法 参考线平滑算法主要有三种: 离散点平滑;螺旋曲线平滑;多项式平滑; 参考链接:参考线平滑 对于平滑方法,一直不太理解平滑、拟合以及滤波三者的作用与区别; 规划的起点&#x…

计算机网络——email

pop3拉出来 超出ASCII码范围就不让传了 这样就可以传更大的文件

Ubuntu 安装 Docker Compose

安装Docker Compose # 删除现有的 docker-compose(如果存在) sudo rm -f /usr/local/bin/docker-compose ​ # 下载最新的 docker-compose 二进制文件 sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-…

JavaScript for循环语句

for循环 循环语句用于重复执行某个操作,for语句就是循环命令,可以指定循环的起点、终点和终止条件。它的格式如下 for(初始化表达式;条件;迭代因子){语句} for语句后面的括号里面,有三个表达式 初始化表达式(initialize):确定循环变量的初始…