quicktype游戏java程序_使用QuickType工具从json自动生成类型声明代码

一、QuickType 工具功能简介

QuickType 是一款可以根据 json 文本生成指定语言(如 Type Script,C++,,Java,C#,Go 等)类型声明代码的工具。

例如我们在写接口调用处理收到响应数据的逻辑时一般分为如下两步: 1.根据接口返回的 JSON 格式写一个对应的类型 2.写 JSON 格式验证与解析逻辑来根据收到的数据生成对应的类对象

使用 QuickType 工具就可以根据 JSON 文本帮助我们自动生成以上两部分的代码。

以如下 JSON 为例:

ebc00322d9702e9fb819d003a6279339.png

使用 QuickType 生成 TypeScript 语言的接口声明代码如下:

755be1d170bc834578ab1b5b2ebf10eb.png

二、QuickType 工具的使用

可以通过桌面应用、web 页、 IDE 插件、命令行 4 种方式使用 QuickType 工具。

其中 web 页(https://app.quicktype.io/ 可能被墙)和桌面应用使用方式基本一致这里不做介绍。

1.桌面应用方式(仅 mac OS)

打开 App Store 搜索 “Paste JSON as Code”下载安装即可

af8f4fc558b702a8cd3e0261fb9ee373.png

软件使用很简单,软件时时生成目标代码,按如下步骤操作:在左侧选择原始数据的类型

输入原始数据

修改要生成的类名,

在右侧选择要生成的目标语言,并进行配置(每种语言的可配置项不同)

648fc55ef7b24fcebec08b606c62d9e2.png

1.以 IDE 扩展方式使用

QuickType 提供了 Xcode,VSCode, Visual Studio 三种开发工具的扩展。下载地址如下:XCode(可能被墙):https://marketplace.visualstu... -

VSCode: https://marketplace.visualstu...

Visual Studio : https://marketplace.visualstu...

下面以 VSCode 扩展的安装与使用为例

2.1 安装 vscode 扩展 Paste JSON as Code打开 Visual Studio Code 软件进入扩展商店

搜索 Paste JSON as Code

点击 install 进行安装

a104932e7fac316890399e92100f6e8f.png

2.2 在 VSCode 中使用 Paste JSON as Code 扩展

vscode 中 Paste JSON 有两种使用方式。

方式 1: 将剪切板中的 JSON 内容直接生成目标代码插入到当前编辑文件中,流程如下:选择并拷贝【control(win)/command(mac)+c】要生成目标代码的 JSON 文本

打开要插入类型声明代码的文件,用鼠标点击要插入代码的位置(扩展会自动根据文件扩展名决定生成目标代码的语言)

打开 VSCode 命令框【按 control(win)/command(mac) + shift +p】输入 “>Paste JSON as Types”后回车

根据提示输入要生成的类型名称,回车后会在当前文档插入声明代码。

如下图:

c216ff05cce731e0fd3f2dbcd16689b4.png

方式 2:编辑 JSON 文件时时生成类型声明文件,流程如下:在 vscode 打开 json 文本文件

打开 VSCode 命令框【按 control(win)/command(mac) + shift +p】输入 “>Open quicktype for JSON”

编辑区域会显示一个名为 QuickType.xx 的目标语言文件,文件内容会随着你对 json 文件的编辑跟新。(默认生成代码语言可能不是你想要的)

设置目标语言类型:打开 VSCode 命令框【按 control(win)/command(mac) + shift +p】输入 “>Set quicktype target language”

在打开的下拉列表中选择生成代码语言完成语言切换

f73e21b63bc88bd9b1b22bf20ea9950a.png

3.以命令行方式使用

安装流程:安装 node 环境

全局安装 quicktype npm 包

命令行下输入: npm install –g quicktype

quicktype 命令# 查看帮助

quicktype

# json字符串生成C# 声明

echo '{ "name": "David" }' | quicktype -l csharp

# json字符串生成Go类声名文件 ints.go

echo '[1, 2, 3]' | quicktype -o ints.go

# 从json文件生成swift类文件

quicktype person.json -o Person.swift

# 可选参数

quicktype \

--src person.json \

--src-lang json \

--lang swift \

--top-level Person \

--out Person.swift

# 从返回 JSON 的接口生成 java类文件

quicktype https://api.somewhere.com/data -o Data.java

b739ec46bb5c46d9c0aa4ce35ba1ea56.png

关于找一找教程网

本站文章仅代表作者观点,不代表本站立场,所有文章非营利性免费分享。

本站提供了软件编程、网站开发技术、服务器运维、人工智能等等IT技术文章,希望广大程序员努力学习,让我们用科技改变世界。

[使用QuickType工具从json自动生成类型声明代码]http://www.zyiz.net/tech/detail-148543.html

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

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

相关文章

endpointimpl怎么填参数_这是一篇VLOOKUP函数家族主要用法的合集,XLOOKUP来了!真香!但是,没有office365吃不着怎么办?...

最近这几个月,XLOOKUP震惊了Excel界,传言三头六臂无所不能,一个人把LOOKUP全家兄弟姐妹的活都给抢了。最开始我是不以为意的,但是相关的信息越来越多,我终于忍不住,今天去买了一套office365,发现…

1个月教你学会用Python实现机器学习

什么是机器学习?在最简单的层面上,机器学习只是优化数学方程式的过程。有几种不同的机器学习,都有不同的目的。机器学习中最流行的两种形式是监督学习和无监督的学习。 我们将在下面介绍他们的工作原理:. 监督学习:监督…

ASP.NET Core 5 在IIS,Nginx,Caddy下的性能测试

点击上方蓝字关注“汪宇杰博客”导语ASP.NET Core 从 2.2 版本起,在 IIS 下可以使用 InProcess 模式提高性能,国外大神 Rick Strahl 对此有一片详细的文章。3年过去了,现在 ASP.NET Core 已经到了 5.0 版本,不同服务器之间的性能有…

sql两个表查不同数据_产品操作MySQL第6篇 – 数据过滤-WHERE子句

MYSQL本资料为产品岗位作为日常工作参考,语言口语化At 2019/4/26 By David.Yang如何使用限定条件来进行数据过滤?在前问当中,我们已经学会到了SELECT查询,在过程当中多次接触了WHERE这个关键词,打过预防针应该知道他就…

win10必须禁用的服务_【亲测】Win10系统如何彻底禁止自动更新 亲测有效的Win10关闭自动更新方法...

昨天有人称Win10系统更新依然无法彻底关闭,今天再来补充一下,肯定可以!不少用户反映自己的Win10系统更新无法彻底关闭,网上提供的关闭Win10更新的教程,关闭之后还是会自动更新Win10系统,而今天装机之家分享…

国庆中秋活动——超强AR/3D地球仪!带你领略世界风光!我们未必能环游世界,但都该有个地球仪

通知!通知!通知!!! 玩酷屋十一黄金优惠限时限量秒杀活动,能抢到算你厉害: 1、活动期间 2017/10/03 22:30 ——2017/10/06 22:30 2、【北斗AR地球仪】原价 299元,秒杀活动价 269元…

flask mysql项目模板渲染_21. Flask 模板 - 宏、继承、包含

宏的概念类似于python中的函数,宏的作用就是在模板中重复利用代码,避免代码冗余。Jinja2支持宏,还可以导入宏,需要在多处重复使用的模板代码片段可以写入单独的文件,再包含在所有模板中,以避免重复。简单定…

如何在 ASP.Net Core 中使用 MiniProfiler

web应用程序的性能相信是大家普遍关心的一个问题,也相信大家有很多工具可用来分析应用程序的性能并能够找到其中的瓶颈,MiniProfiler 就是这个领域中的一款产品,它是一款简单的,功能强大的web应用分析工具,MiniProfile…

java 计时_Breitling(百年灵)世界时间终极计时腕表

所有热爱旅行的冒险家可以尽情期待,一款适合所有手腕的全新尺寸“旅行计时腕表”将在今年巴塞尔表展上华彩亮相。百年灵世界时间终极计时腕表(Chronomat 44 GMT),适合腕间的完美尺寸,便捷的三时区时间显示,超凡的百年灵自产机芯&a…

python时钟罗盘酷炫代码_抖音上的时钟屏保,被我改造完用来表白

作者:爱编程的小和尚原文链接:https://blog.csdn.net/Newbie___/article/details/105378852抖音上很火的时钟屏保,被我改造完后用来准备准备准备表白,谁说程序员不浪漫?!不知道一直关注小编我的小伙伴们之前…

大数据|意不意外?今年卖得最好的月饼是这个馅的……

中秋节,你家的月饼都吃完了吗? 淘宝、天猫、京东、苏宁易购等各大电商平台近日相继发布“月饼大数据”。透过这些大数据,我们来看看今年的“月饼消费”有哪些新趋势? 五仁稳居销量“老大哥” 五仁桂花、五仁肉松、五仁牛肉、五仁…

使用FuncT, TResult 委托实现API日志的记录

问题平常我们开发web api的时候&#xff0c;一般是需要记录api的输入输出信息&#xff0c;方便后续排查问题&#xff1b;那么我们一般怎么做的&#xff0c;一般是我们在一个公共地方的写个公共方法控制输入输出。这时候Func<T, TResult> 委托就派上用场。什么是FuncFunc&…

xencenter vgpu 看不见_有一种设计是“看不见,但感受得到”

设计源于生活&#xff0c;设计改变生活。在从业10余年之久的设计师刘洋来看&#xff0c;设计就是带着初心&#xff0c;不断去改变&#xff0c;去创造&#xff0c;去将更多设计的理念投射到时代的潮流中。刘洋认为设计不止是视觉感受&#xff0c;更重要的是融入人的情感&#xf…

数学告诉你家庭关系的奥秘

一直跟踪家庭关系可能非常困难。如果你父亲表弟的女儿刚刚生了一个小男孩&#xff0c;你们两个人怎样被相互介绍&#xff1f;谁是你的"曾曾姑母"&#xff1f;怎样发现你的"移去两次的第一代表亲"&#xff1f;幸运的是&#xff0c;一点儿数学逻辑可以帮助澄…

sql server2005 分页特性

在sql server 2005的新功能中&#xff0c;比较西黄分页功能&#xff0c;通过查询函数row_number over(order by field)实现是提取分页数据当页的记录&#xff0c;此功能原理上和临时表差不多&#xff0c;不过通过插叙语句操作就快捷多了&#xff0c;做了个demo&#xff0c;分页…

c#爬虫-1688官网自动以图搜图

背景在1688有个功能&#xff0c;就是上传图片&#xff0c;就可以找到类似的商品。如下网址 &#xff1a;https://www.1688.com/这时候&#xff0c;我们可以使用程序来代替&#xff0c;大批量的完成图片上传功能。实现思路1、找到图片上传接口post请求&#xff0c;form表单中有s…

php代码里加图片,php如何添加图片

php如何添加图片&#xff1f;php中插入图片的代码是什么&#xff1f;PHP插入图片&#xff0c;实际还是输出HTML代码比如&#xff1a;echo ;还可以直接用PHP生成图片显示出来php的gd库可以生成多种图像文件&#xff0c;如gif,png,jpg,wbmp,xpm等&#xff0c;下面来看一个生成正方…

matlab优化算法案例分析与应用_最优化计算与matlab实现(18)——粒子群优化算法——权重改进的粒子群算法...

参考资料《精通MATLAB最优化计算&#xff08;第二版&#xff09;》编程工具Matlab 2019a目录石中居士&#xff1a;最优化计算与Matlab实现——目录​zhuanlan.zhihu.com权重改进的粒子群算法在微粒群算法的可调整参数中&#xff0c;惯性权重 是最重要的参数&#xff0c;较大的 …

两个list怎么对比数据_基于日志的回放对比系统设计

‍‍‍‍‍‍点击关注“有赞coder”获取更多技术干货哦&#xff5e;作者&#xff1a;马力部门&#xff1a;新零售测试一、背景上半年公司的网关系统进行了重构&#xff0c;需要把零售业务已有的网关接口迁移到新网关上。这些接口每天都有成千上万次请求&#xff0c;为商家提供各…

让人眼花缭乱的视错觉,太酷炫了!

盯~ 原理&#xff1a;这只死盯着人看的小短手并不是一个普通的纸模&#xff0c;它的眼睛鼻子和嘴也都不在正常的位置上&#xff0c;它的脸其实是凹下去的。 错觉的关键在于我们的大脑对凹面和凸面的加工方式&#xff0c;以及大脑对从图形中挑出一张脸的执着和能力。大脑想要…