许式伟|七牛云CEO许式伟:Go+语言的“三位一体”与三个阶段

许式伟|七牛云CEO许式伟:Go+语言的“三位一体”与三个阶段

文章图片



出品 | 零壹智库
作者 | 周昱
随着科技时代的到来 , 掌握一门甚至多门编程语言逐渐成为学校和职场的重要技能 。 编程语言(programming language)是用来定义计算机程序的形式语言 , 一般以语法和语义进行描述 。 在历经机器语言、汇编语言时代 , 编程语言从1957年至今处于高级语言时代 。 21世纪八九十年代 , C++、Python、Java等语言崛起并走向主流 。 但这些主流的通用语言都存在一定短板:Python存在脚本语言的局限性;而如C、C++等静态语言学习门槛高 。 为了使语法精简、易学 , Google团队在2009年发明了Go语言 。 在随后十年内 , Go语言在中国广受云厂商青睐 , 甚至成为字节跳动、B站等科技公司的主流语言 。
“Go主打后端编程领域 。 现在云计算的基础设施基本使用Go编写 , 如Docker(注:一个开源的应用容器引擎)、Kubernetes(注:一个开源的、用于管理云平台多个主机上的容器化的应用) 。 ”上海七牛信息技术有限公司(简称“七牛云”)CEO许式伟在近日接受零壹财经访谈时说 , “Go对于服务器开发是尖刀 , 但在别的领域却不擅长 。 ”为了使Go更精简、更具生命力、更适合大型软件工程开发 , 许式伟及其团队于2020年7月正式推出了Go+ , 并在2021年10月发布Go+1.0版本 。

据许式伟介绍:“Go+是集Engineering(工程开发)、STEM education(科学、技术、工程和数学四门学科教育)和Data science(数据科学)‘三位一体’的通用语言 。 伴随场景落地 , Go+1.0版本将打造‘从工程与STEM教育的一体化开始 , 构建工程师培训体系’ 。 ”
在10月15日七牛云主办的Go+1.0发布会当天 , 零壹财经围绕Go+的设计初衷、使用场景和未来发展对许式伟进行了访谈 , 以下为主要访谈内容 。
Go+的诞生与雄心:欲以通用性、低门槛、开源等特性占领开发者入口
零壹财经:根据您之前的一些经历 , 您在建立金山实验室选择JAVA为主体语言;在2009年进入盛大创新院您选择了C++作为开发语言 。 2011年 , 您在创办七牛云的时候坚持选择了Go语言 。 作为圈内公认的语言专家 , 请问是什么触动您发明Go+这一全新的语言?
许式伟:首先 , 发明Go+与公司定位有关 。 作为一家PaaS公司 , 七牛云的用户客群为以语言、数据库等为生产力工具的开发者 。 我们选择以受众最广的语言切入 , 通过Go+触达目标人群进行转化 , 最终占领开发者入口 。 其次 , 以往普遍的认知是编程语言仅适用于工程师用 。 我们可能是业内唯一认为语言应当具备普惠性 , 应当所有人哪怕是小学生都要“提笔就能写” 。 最后 , 语言应当具备很强的适应性 , 无论小型还是大型的程序都可以很好地满足 。
零壹财经:由于Go+是基于Go开发的 , 那相较于Go 以及去年发布之初的Go+ , 当前 Go+ 1.0实现了哪些优化呢?
许式伟:首先 , 我们需要了解一下背景 。 Go语言在2009年由全球最牛的云技术公司之一Google推出 。 它的出现主要为了解决企业自身的问题 , 并没有在市场化上做太多努力 。 Go主要面向工程师 , 设置了很多工程约束 , 对初学者不是很友好 。 Go+虽然基于Go开发 , 两者皆为静态语言 , 但主要的差别是Go+隐藏了工程的复杂性 , 在表达的外观上具备脚本语言的特性 。 需要特别说明的是 , 脚本语言门槛低 , 适用于编写小型程序;相较于脚本语言 , 静态语言更有利于工具做静态分析、有利于性能优化及大型工程的构建等 。
去年发布之初的Go+ , 更多的是处于概念设计阶段 , 让大家理解Go+大概会长什么样子的 , 通过它去探索Go+未来发展的各种可能性 。 而今天的Go+ 1.0 , 它已经能完美地兼容Go , 使用门槛也进一步得到了降低 。 另外 , 更重要的是Go+1.0它自带了兼容Scratch的引擎 , 可应用于游戏、教育等场景 。