易语言资源网 - 做最全的易语言资源下载社区
精易论坛授权登录

【YYJSON】易用版 速度最快的JSON模块   [复制链接]

    2021-12-29 16:09:14
    模块控件源码
    易语言资源网
    9662 次浏览
    来源链接


拥有YYSJON的速度

但像极了zyJSON,更易上手

简介

最早开发了CCHTTP易语言网站开发模块,鱼刺大佬提到使用zyjson性能不理想,因此开始着手寻找速度更快的json库。后找到了lyjdgkg大佬封装的易语言版yyjson,速度快的飞起,每秒可达3GB+的解析速度,构建速度也极快,超过zyjson数十倍。但yyjson也有一些局限性,例如无法指针传递置对象数组,句柄操作提升效率的同时增加了代码的开发量,因此,我尝试在性能与开发速度之间找了一个平衡,基于lyjdgkg大佬的yyjson模块内存版进行了二次封装,使其变得更加易用,同时尽量减少性能损耗。

改进

  • ✅无法取对象,置对象(增加了对应方法:置JSON  取JSON)
  • ✅无法取数组,置数组(增加了对应方法:置JSON  取JSON)
  • ✅无需要手动初始化(使用yy对象和yy数组)
  • ✅增加从字符串导入数组
  • ✅优化解析类和构造类是分开问题 ( 直接移除解析类 )
  • ✅将句柄参数移到最后(有利于提高开发速度)
  • ✅修改“创建_解析”方法为“解析”(更接近易语言圈内的用法)
  • ✅增加取类型空留参数直接返回根节点类型(大部分命令都进行了这部分优化)
  • ✅默认使用通配符模式,不需要输入第一个“/”
  • ✅优化取类型 等方法,空留参数直接返回根节点类型
  • ✅万能取文本,如果取出的节点不是文本型,自动转换
  • ✅屏蔽句柄操作,全部使用通配符操作
  • ✅添加数组成员不必提前创建(可以节省很多代码)

使用

使用方法非常简单,参照例子使用即可,您只需要记住:

① 一切使用更简洁的通配符:a/b/c/1 = a.b.c[1]  

② 置XXX()可以插入任何数据;

③ 插入XXX  添加XXX  置成员XXX  是针对数组的方法;

鸣谢

YYJSON开源:GitHub - ibireme/yyjson: The fastest JSON library in C

YYJSON易语言:yyJSON动态支持库(每秒最快可达3GB+解析性能)

CCHTTP项目:CCHTTP 仿E2EE网站开发模块 开发网站新选择



点我下载 (已有 1261 次下载)

引用模块


源码文件名 模块文件名
使用例子.e
yyJson - 酷C版.ec


引用支持库


源码文件名 支持库文件名 支持库标识
使用例子.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
模块源码.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
数据操作支持库一 2.0 4BB4003860154917BC7D8230BF4FA58A


[错误报告]   上一篇:小餐馆收银系统1.0(简单版)...     下一篇:键盘快速启动1.1(只需敲几下键盘,快速...