Google公司允许员工拿出20%的时间来研究自己喜欢的项目(这也太nice了吧)
几位大佬在烦透了C++编程语言的各种特性后, 决定合伙搞一门新的语言
ps: 可以看到Go主要作者的发量还算可以, 所以学Go应该不会危及到发际线(滑稽)
这个新语言要具有C语言的执行效率还要有足够简单的语法(Less is More), 于是…Go语言(也称为golang)诞生了!
这里贴一张目前主流语言执行效率与开发效率的对比图:
“人生苦短, 我用python”, 目前最火的Python语言虽然具有极高的开发效率, 但是执行速度慢依然是它的痛点
老大哥C语言虽然执行速度极快, 但是开发效率实在太低
而Go在具有极快的执行速度外, 还具有相当丝滑的开发效率, 未来可期
Go的吉祥物Go语言的吉祥物是一只可爱的地鼠(gopher)
我从未见过有哪个编程语言这么注重它的吉祥物
在Go的官网上, 随处可见它的吉祥物(而且都好可爱, 有木有?)
而且我们还可以构造属于自己的Go吉祥物:
贴个地址: http://quasilyte.dev/gopherkon/
我用gopherkon生成了500张不同样的Go吉祥物: https://www.bilibili.com/video/BV1Pr4y1F7bp/
笔者学习Go语言, 很大原因也是被这只可爱的地鼠所吸引 :D
Go的热门程度截止至2021年1月, Go在Tiobe排行榜(编程语言的热门程度)上位列14:
从2010年至2021年, Go总的来说非常的热门, 而且未来肯定还会有涨的趋势:
Go的特色没有继承多态的面向对象
强类型语言
interface不需要显式声明(Duck Typing)
没有异常处理(Error is value)
基于首字母的可访问特性
不用的import或者变量引起编译错误
完整而卓越的标准库包
Go内置runtime
服务器编程,以前你如果使用C或者C++做的那些事情,用Go来做很合适,例如处理日志、数据打包、虚拟机处理、文件系统等。
分布式系统,数据库代理器等。
网络编程,这一块目前应用最广,包括Web应用、API应用、下载应用。
内存数据库,前一段时间google开发的groupcache,couchbase的部分组建。
云平台,目前国外很多云平台在采用Go开发,CloudFoundy的部分组建,前VMare的技术总监自己出来搞的apcera云平台。
游戏服务端的开发。
国外的公司:
比较熟悉的可以看到有:
拳头公司!!!! 开发英雄联盟的游戏公司。因为Go的速度, 拳头用它来做游戏服务端
谷歌公司, 自己员工开发的语言, 当然得自己用
微软
推特
网飞
脸书等…
国内也有大量公司在用Go改善它们的业务:
前段时间, B站后端源码泄漏, 从语言占比来看, Go占了绝大多数:
贴个github地址: https://github.com/froginwe11/Bilibili-Go-Backup
所以是不是学好Go语言, 就能进B站摸鱼了? (手动滑稽)
写在最后笔者也是前不久才接触Go语言, 也是一个小菜鸟, 但是有什么比一步步变强(变秃)更热血的呢?
让我们一起朝着Go语言大师的目标前进!