作家
登录

为什么需要Go这样一个新编程语言?

作者: 来源: 2017-11-14 12:35:44 阅读 我要评论

Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践


【编辑推荐】

  1. 办事端I/O机能:Node、PHP、Java、Go的比较
  2. JetBrains 的 Go 集成开辟情况已肯定最终名称:GoLand
  3. 左耳朵耗子:Go说话,Docker和新技巧
  4. 可视化进修 Go并发编程
  5. Go开源宣布8周年,成2017年增长最快说话
【义务编辑:未丽燕 TEL:(010)68476606】

Go的┞奋学思惟

Go说话最早并不是一个Google的┞俘式项目,而是作为一个“20%”的项目出现,直到2009年才以开源的方法面向大年夜众,今朝Go Team有稳定的宣布周期,大年夜约半年一个新的版本,今朝最新为1.9版本。

Go说话的出身可以说是异常豪华的,最早对Go说话的评论辩论是由罗伯特·格瑞史莫、罗伯·派克和肯·汤普逊提议的,主如果为懂得决C++中出现的问题而提议的项目。肯·汤普逊是C说话和Unix的创造者,罗伯特·格瑞史莫介入设计了Java的HotSpot虚拟机和Chrome浏览器的JavaScript V8引擎,罗博·派克在大年夜名鼎鼎的Bell Lab任职多年,介入了Plan9操作体系、C编译器以及多种说话编译器的设计和实现。

Go说话大年夜2009年开源到如今吸引了很多开辟者的留意,分别获得了2009年和2016年的TIOBE之星,如不雅说2009年那一次是因为Google的影响,那2016睦?;次绝对是自身实力的厚积薄发,如今已是2017年的下半年,读者见到本书会在18年事首?年代。

在互联网蓬勃成长的今天,越来越多的编程说话涌入到企业开辟中来。Go说话作为一个新生代的编程说话同样也被开辟人员所追捧,但因为Go说话的编程材料很少很多人不知道该若何去入门。即使找到部分材料,然则不敷体系。正所谓常识来源竽暌冠实践,本书跟随由浅入深、体系讲解这一本质特点带领读者真正控制和应用Go说话的法度榜样设计特点,做到融合贯通。

为什么须要Go如许一个新编程说话?

传统的说话如C++,大年夜家花费太多时光来进修若何应用这门说话,而不是若何更好的表达写作者的思惟,同时编译花费的时光实袈溱太长,对于编写-编译-运行这个链条来说周期太长。动态说话如Python,因为没有强类型的束缚,很多问题须要在运行时发明,这种初级缺点更应当交给编译器来发明。同时有如下趋势:

  • 人力成本越来越高;
  • 机械越来越便宜;
  • 机械的机能越来越厉害;
  • 在开辟效力和运行速度上达到均衡;

这就是Go说话的出生背景。

简化这门说话必是一门更大年夜的成就 -Rob Pike

Go的思维方法

  • 最当心智包袱原则;
  • 最小特点;
  • 最小惊奇;
  • 起码犯错既会;

Go说话在工程上的设计

  • Go在工程上的设计可谓体谅入微,没有依附地狱,甚至是glibc;
  • 编译一次,到处拷贝,安排极为便利;
  • 交叉编译只是一个情况变量的问题;

Go说话的并行和并发

  • 并发(concurrent)不是并行(parallel)
  • 例:node.js具有并发的才能,但不克不及充分应用多核
  • 写出一个能充分应用多核的法度榜样须要很深的体系编程积淀
  • 得益于优良的设计,Go可以轻松地写出跑满所有CPU的法度榜样

Go说话开辟的项目

  • Docker,火热的容器化技巧;
  • Kubernetes,Goole Borg的开源实现;
  • Etcd, 类似zookeeper的高可用key-value存储;
  • TIDB, 国人开辟的Google spanner的开源实现;


  推荐阅读

  实现基于LVS负载均衡集群的电商网站架构

Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践 背景集群(cluster)技巧是一>>>详细阅读


本文标题:为什么需要Go这样一个新编程语言?

地址:http://www.17bianji.com/lsqh/38838.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)