Zig 语言通用代码生成器:逻辑,冒烟测试版发布二

Zig 语言通用代码生成器:逻辑,冒烟测试版发布二

Zig 语言是一种新的系统编程语言,其生态位类同与 C,是前一段时间大热的 rust 语言的竞品。它某种意义上的确非常像 rust,尤其是在开发过程中无穷无尽抛错的过程,简直和 rust 真是一模一样。

Zig 语言是一种很有前途的语言,现在的稳定版是 zig 0.13 版本。已经有一批人开始关注,学习和使用这一新兴的语言。笔者也是其中之一。笔者将 rust 通用代码生成器莲花移植到了 zig,由此得到了 zig 通用代码生成器:逻辑。为 zig 语言的学习者和使用者提供了方便。

Zig 语言通用代码生成器:逻辑。依然专注与 Zig web 领域。受限与所用组建的开发状况,目前只支持 sqlite 数据库,而且数据库不能太复杂。受限于 httpz 库,其 zig 后端没有集成界面,系统只有唯一的 Nodejs 前端界面。

Zig 语言通用代码生成器:逻辑的第一个冒烟测试版已经发布。视频清参考 

https://www.bilibili.com/video/BV1aNyDYmEXN/

https://www.bilibili.com/video/BV1sz1cYNEDq/

Zig 语言通用代码生成器:逻辑的项目地址:

https://gitee.com/jerryshensjf/Logic

二进制发布版地址:

https://gitee.com/jerryshensjf/Logic/releases/tag/V_1_0_0_smoke

Zig语言通用代码生成器:逻辑

项目介绍

Zig语言通用代码生成器:逻辑,是Java写成的Zig语言通用代码生成器,目前的版本采用openjdk 21编译。Zig语言通用代码生成器:逻辑,基于Rust通用代码生成器:莲花的架构。软件为一war包,可以部署在 Tomcat 9的webapps目录下,启动即可运行。

项目图片

输入图片说明

输入图片说明

软件架构

后端代码生成物是zig 0.13环境。采用httpz和Sqlite数据库。

前端代码生成物可运行在Nodejs 21,18或14上。是Vue ElementUI 架构。

版本发布

逻辑的第一个冒烟测试版本已发布,支持httpz和sqlite数据库,所附示例中,One和CourseManagementPages已可以正确,无错的运行。可以直接解压缩,编译,运行。您可以在解压后的后端代码生成物的根目录中运行zig build编译代码生成物。编译后进入zig-out/bin目录兴建名为数据库名.db的sqlite数据库文件,并使用sql文件中的数据库脚本建表和初始化数据。而后启动bin目录中的应用程序即可启动后端程序。

和其他通用代码生成器的双界面不同。逻辑只含有一套前端界面。zig后端只有API,没有集成的后端界面。前端界面支持Nodejs 21,18或14。为Vue和ElementUI界面。这是由于httpz框架还不支持暴露静态资源导致的,未来如果httpz框架支持静态资源后,会有功能更新。

开发现状

现在已完成第一个冒烟测试版本。正在开发进一步的功能更新。会有明显的增强。

介绍视频

冒烟测试版

https://www.bilibili.com/video/BV1aNyDYmEXN/

https://www.bilibili.com/video/BV1sz1cYNEDq/

已知问题

由于sqlite.zig驱动的功能限制,请不要生成字段比较多的数据表,如果字段过多,会超过sqlite.zig的功能限制。您可以测试一下MultiPages示例,看看超过限制后系统的报错。 测试此代码生成器的功能您可以使用One和CourseManagementPages示例,或者自己测试比较简单的示例,最好是单独的页面,没有多对多关系和图片,日期时间,和登录模块,图形报表和复杂版面的示例,使用类似与One和CourseManagementPages的示例应该是支持的。

代码生成器截图

输入图片说明

输入图片说明

输入图片说明

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高等数学-宋浩版2.0-映射

映射:X,Y为非空集合,存在法则F,对X(原像)中每个元素X,按法则F,在Y中有唯一元素与之对应,F为x到Y(镜像)的映射。f:X->Y X原像,Y像,x定义域,Df,Rf &#x…

Mac book英特尔系列?M系列?两者有什么区别呢

众所周知,Mac book有M系列,搭载的是苹果自研的M芯片,也有着英特尔系列,搭载的是英特尔的处理器,虽然从 2020 年开始,苹果公司逐步推出了自家研发的 M 系列芯片,并逐渐将 MacBook 产品线过渡到 M…

python之多任务爬虫——线程、进程、协程的介绍与使用(16)

文章目录 1、什么是多任务?1.1 进程和线程的概念1.2 多线程与多进程的区别1.3 并发和并行2、python中的全局解释器锁3、多线程执行机制4、python中实现多线程(threading模块)4.1 模块介绍4.2 模块的使用5、python实现多进行程(Multiprocessing模块)5.1 导入模块5.2 模块的…

Caffeine本地缓存框架

Caffeine本地缓存框架 hi,我是阿昌,今天记录一下Java最强本地缓存Caffeine 1、缓存介绍 缓存(Cache),在软件无处不在。从底层CPU多级缓存,再到客户页面缓存,和服务器数据缓存,导出都存在着缓存的身影&am…

【Nas】X-DOC:Mac mini 安装 ZeroTier 并替换 planet 实现内网穿透

【Nas】X-DOC:Mac mini 安装 ZeroTier 并替换 planet 实现内网穿透 1、下载客户端 ZeroTier One2、安装过程3、更换planet备份原planet4、重启服务5、加入网络6、NAT内网穿透 1、下载客户端 ZeroTier One https://www.zerotier.com/download/ 选择 MacOS 适用版本&…

设计模式: Pimpl(Pointer to Implementation)

这种设计模式通常被称为 Pimpl(Pointer to Implementation)惯用法,有时也被称为 Cheshire Cat 惯用法。它主要用于隐藏实现细节和减少编译依赖。 例子: DatabaseConnection.h #ifndef DATABASE_CONNECTION_H #define DATABASE_…

Next.js + Prisma + Auth.js 实现完整的认证方案

前言 在现代 Web 应用中,用户认证是一个基础且重要的功能。本文将介绍如何使用 Next.js Prisma Auth.js 实现一个完整的认证方案。这个方案既安全又灵活,能满足大多数项目需求。 技术栈选择 • Next.js: React 全栈框架,提供了服务端渲染和 API 路由• Prisma: 现代数据库…

SQL Server动态列转行

SQL Server 2017及以上版本 STRING_AGG 确实,STRING_AGG 是 SQL Server 2017 (版本 14.x) 及更高版本中引入的一个聚合函数,它允许你将多个行的值组合成一个字符串,并且你可以指定一个分隔符来分隔这些值。由于你正在使用 SQL Server 2014&…

岭回归的MATLAB步骤

MATLAB 实现框架,它涵盖了从数据导入到岭回归的步骤,包括计算共线性、使用 MAE、MSE、R、MAPE 进行评价,以及绘制相应的可视化图表。 1. 数据导入 首先,导入你的 Excel 文件 data.xlsx。假设前面的列是因变量(特征&a…

Java | ReentrantLock 锁和 synchronized 锁的区别和共同特点是什么?

ReentrantLock 和 synchronized 都是 Java 中的锁机制,主要用于实现线程间的互斥访问,确保线程安全。它们有一些共同点,也有各自的特性和区别。以下是二者的详细对比: 一、共同特点 可重入性:两者都是可重入锁&#x…

Redis 过期事件监听器

Redis 过期事件监听器完整实现 要使用 Redis 过期事件监听器来更新数据库状态,我们需要确保 Redis 的事件通知已启用,并实现监听器来捕获过期的键,并根据需要更新数据库。 步骤 1:启用 Redis 过期事件通知 需要在 Redis 配置文件…

HBuilder X 中Vue.js基础使用2(三)

一、条件渲染 1、条件判断 v-if : 表达式返回真值时才被渲染 v-else :表达式返回为假时不被渲染 2、 分支条件判断 v-else-if :使用v-if , v-else-if 和 v-else 来表示其他的条件分支 3、显示隐藏 v-show v-show true 把节点显示 …

PortQry下载安装使用教程(超详细),Windows测试UDP端口

《网络安全自学教程》 PortQry是微软官方提供的一款TCP/IP连接「排障工具」,用来「检查」TCP/UDP「端口状态」。 平时检查端口状态,最常用的是telnet,但它是基于TCP协议的,无法检测「UDP端口」,这篇文章教大家如何在W…

Axure随机验证码高级交互

亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢! 课程主题:字母数字随机验证码高级交互 主要内容:4位字母数字随机验证码生成、错误提示与State状态同步 应用场景:登录验证码、其他类…

面试宝典(五):用三个线程按顺序循环打印123三个数字,比如123123123

要使用三个线程按顺序循环打印123三个数字,势必要控制线程的执行顺序,可以使用java.util.concurrent包中的Semaphore类来控制线程的执行顺序。 代码示例 import java.util.concurrent.Semaphore;public class SequentialPrinting123 {private static Se…

管家婆工贸ERP BB036.销售退货单生成销售单

最低适用版本: 工贸系列 22.0 插件简要功能说明: 销售退货单生成销售单,支持联查上下游,并反写已生单数量更多细节描述见下方详细文档插件操作视频: 进销存类定制插件--销售退货单生成销售单 插件详细功能文档: 1. 单据字段占用: a. 销售单: ⅰ. 占用自由项11、12、…

leetcode:34. 在排序数组中查找元素的第一个和最后一个位置(python3解法)

#1024程序员节 | 征文# 难度:中等 给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(lo…

Vue中的过渡与动画:提升用户体验的秘籍

Vue中的过渡与动画:提升用户体验的秘籍 在现代Web开发中,用户体验(UX)的重要性不言而喻。Vue.js作为一个渐进式JavaScript框架,提供了一套简单而强大的过渡和动画系统,使得开发者能够轻松地为应用添加平滑的过渡效果和动画。本文…

短信验证码发送实现(详细教程)

短信验证码 接口防刷强检验以及缓存验证码阿里云短信服务操作步骤验证码发送实现 好久没发文啦!最近也是在工作中遇到我自认为需要记录笔记的需求,本人只求日后回顾有迹可寻,不喜勿喷! 废话不多说,直接上代码&#xff…

初识算法 · 前缀和(1)

目录 前言: 一维数组的前缀和 题目解析 算法原理 算法编写 二维数组的前缀和 题目解析 算法原理 算法编写 前言: ​本文的主题是前缀和,通过两道题目讲解,一道是一维数组的模板,一道是二维数组的模板。 链接…