软件开发客服
首页 > 上上资讯 > 软件定制语言Go发布新的协定缓冲区API版本

软件定制语言Go发布新的协定缓冲区API版本

2020-03-09 16:32:09编辑:上上定制浏览量:157

Go发布新的协定缓冲区API版本,其主要提供了反射功能,让开发者能够检视协定缓衝区类型系统的数值。协定缓衝区是独立于任何开发语言的资料交换格式,为序列化结构资料的扩充机制,与XML类似,但是更小更简单。

软件定制语言Go发布新的协定缓冲区API版本

软件定制语言Go原本的协定缓衝区套件已经发布了十年,但是随著使用者需求的成长,该套件也越来越不敷使用,不少软件定制开发者使用Go反射套件,撰写程式来检查协定缓衝区的讯息,但是因为反射套件只可检视Go的类型和数值,会忽略来自协定缓衝区类型系统的资讯。当软件定制开发者撰写一个走访日志项目,并且清除所有注释栏位中敏感资料的函式,但是因为注释栏位并非Go类型系统的一部分,所以处理起来就比较麻烦。


除此之外,软件定制开发者也有使用动态讯息类型这类,非由协定缓衝区编译器产生的资料结构的需求。proto.Message介面也常是问题的来源,虽然该介面会辨识生成讯息类型的值,但是却几乎没有描述这些类型的行为,因此当用户创建实作介面的类型,并将类型数值传递给函式,想要取得生成讯息值时,便常出现程式崩溃或是不可预期的行为。造成这三个问题的原因相同,而共同的解决方法,就是Message介面应该完全指定讯息的行为,而且操作Message值的函式,应该接受任何正确实作该介面的类型。由于无法在不改动Message类型现有定义的情况下,维持套件API的相容性,因此Go官方决定发布全新协定缓衝区模组,且新版本不与旧版本相容。

标签: Go

21

相关资讯

Khan Academy决定从Python拆迁到Go编程语言

Khan Academy决定从Python拆迁到Go编程语言

曾受Google与AT&T捐助,一个月为数千万使用人提供网上课程服务的非盈利培训机构KhanAcademy,在自己的技术性blog行文提及,以前10年她们应用Python2

标签: Khan Academy Python Go

谷歌联同IBM宣佈将在Google Cloud添加IBM Power系统

谷歌联同IBM宣佈将在Google Cloud添加IBM Power系统

谷歌联同IBM宣佈将在GoogleCloud添加IBMPower系统。公司应用云来智能化系统架构与简单化工作流程有不一样方法。有的公司把全部老式系统软件更换后採用云空间。有的则想再

标签: Google Cloud IBM Power

Google Assistant功能介绍

Google Assistant功能介绍

全世界现有超出十亿台设备内置GoogleAssistant数位语音助手,月活用户量则超过5亿,并提前准备在2020发布排程、留言、长阅读文章,或者立即替代控制器来操纵智能家电等新功

标签: Google Assistant