Golang简介
编程语言已经非常多,偏性能敏感的编译型语言有 C、C++、Java、C#、Delphi和Objective-C 等,偏快速业务开发的动态解析型语言有PHP、Python、Perl、Ruby、JavaScript和Lua等,面向特 定领域的语言有Erlang、R和MATLAB等,那么我们为什么需要 Go这样一门新语言呢?
数据来源:https://www.tiobe.com/tiobe-index/
编程语言排行榜前9名是相当稳定的,但是第10名每个月都会变化,候选人就是GO、Swift和R。Swift是IOS移动应用程序的头号编程语言,但是仅仅适用IOS而不能用于Android,另外R语言的地位深深的被python压制。
在2000年以前的单机时代,C语言是编程王中王。随着机器性能的提升、软件规模和复杂度提高、Java逐步取代了C的大佬地位。但是Java编程的体验并未尽人意。历年来Java的市场份额在逐步下降,后劲不足。
Go语言作者
罗伯特·格瑞史莫,罗波·派克,肯·汤普逊于2007年9月开始设计Go,Robert开发GO之前是Google v8、HotSpot JVM的主要贡献者;Rob主要是Unix、UTF-8、plan9的作者;Ken主要是C、B语言、Unix之父。
后来Ian Lance Taylor、Russ Cox加入项目,Ian Lance Taylor是GCC的作者之一,目前负责GCC的Go实现;Brad Fitzpatrick之前是Memcache的作者,目前主要是HTTP2的实现作者。
Go语言与新技术
Golang是Google开发的一种静态强类型、编译型、并发型、具有垃圾回收功能的编程语言。Go语言作者之一Rob Pike在新文章“Go: Ten years and climbing”中,回顾了一下 Go 语言的发展过程。他们自己都没想到Go语言的迅猛发展,迅速成为了云计算领域中新一代开发语言,中国程序员对Go的热爱超出了他们的想象。
Go语言特色:
- 语法简单、上手快
- 并行和异步编程几乎无痛点,Go语言的Goroutine和Channel是并发编程两大神器,而C、Java、Python等语言的并发和异步控制比较麻烦,还很容易出错,而Go解决这个问题非常优雅流畅
- 互联网时代的C语言,C语言关注执行效率和性能与底层友好,而python是用尽量少的代码完成更多的事。而Go语言期望完成一种C+python的统一,解决开发效率和底层应用开发
- Go语言有Google世界一流的技术公司支持
- 杀手级应用Docker
Go语言不会吞噬底层到C和C++的级别,也不会吞噬到Java的业务层。Go语言一定能吞噬的是Pass上的项目,例如消息缓存中间件、服务发现、日志收集、控制系统等。
Go语言杀手级的Docker应用优势:
- Docker上手容易
- 解决了运维中的环境问题
- Google的支持
- k8s
使用Go语言的公司
原文地址:https://www.cnblogs.com/pyyu/p/9747303.html