本文共 2292 字,大约阅读时间需要 7 分钟。
哈喽大家好啊!喵咪我今天又来开坑了,最近学习和使用了go语言了一段时间,也在组合一些好的组件编写phalgo开发框架.在想是不是可以来写一个套关于go语言的文章和一些好的组件的介绍使用,虽然自己也是半桶水但是我相信在编写的过程中能给自己很多收获,最好也能帮助大家了解和熟悉golang这门语言,话不多说那么就开始今天的go语言之旅吧~
附上:
喵了个咪的博客:
phalgo地址:
Go语言圣经:
如果是计算机专业出生的童鞋都听过贝尔实验室一词,这就是诞生著名的UNIX系统和C语言的地方,经过了40年在同一个地方Google工作的Ken Thompson和Rob Pike还有Robert Griesemer一同设计了Go语言,目的是为了解决在21世纪多核和网络化环境下越来越复杂的编程问题.
Go语言是从Ken Thompson发明的B语言、Dennis M. Ritchie发明的C语言逐步演化过来的,是C语言家族的成员,因此很多人将Go语言称为21世纪的C语言。纵观这几年来的发展趋势,Go语言已经成为云计算、云存储时代最重要的基础编程语言。
就笔者玩了一段时间的感受,go语言是C语言的衍生有C语言的特色,毕竟被称为21世纪的C语言,并且go也从一些现代语言中吸收了很多优秀的地方,比如C语言不具备的GC机制,接口机制,还有很多新的特性,而且在编译时可以大幅缩短时间,相对于C++的十分之一
下图展示了有哪些早期的编程语言对Go语言的设计产生了重要影响。
图片引用:Go语言圣经
go语言至今版本历史:
2007年,谷歌工程师Rob Pike, Ken Thompson和Robert Griesemer开始设计一门全新的语言,这是Go语言的最初原型。2009年11月10日,Go语言以开放源代码的方式向全球发布。2011年3月16日,Go语言的第一个稳定(stable)版本r56发布。2012年3月28日,Go语言的第一个正式版本Go1发布。2013年4月04日,Go语言的第一个Go 1.1beta1测试版发布。2013年4月08日,Go语言的第二个Go 1.1beta2测试版发布。2013年5月02日,Go语言Go 1.1RC1版发布。2013年5月07日,Go语言Go 1.1RC2版发布。2013年5月09日,Go语言Go 1.1RC3版发布。 2013年5月13日,Go语言Go 1.1正式版发布。2013年9月20日,Go语言Go 1.2RC1版发布。2014年6月19日,Go语言Go 1.3版发布。2015年8月20日,Go语言Go 1.5版发布,本次更新中移除了”最后残余的C代码”。2016年1月07日,Go语言Go 1.6版发布, Go1.6开始全面支持 HTTP/2 大幅改善GC性能
go里面有很多有意思的特性,笔者根据自己使用和收集了以下几点:
更具以上特性,相信大家对go的也有了一个抽象的定位了
到现在,Docker几乎是Go再难找到也难以复制的一个成功案例。Docker项目在2014年9月份就拿到了C轮4000万美元融资,版本迭代速度超快,目前从GitHub看到已有78个版本,而它仅仅是再2013年初才正式开始的一个项目而已。
Docker团队之所以喜欢用Go语言,主要是Go具有强大的标准库、全开发环境、跨平台构建的能力。
GitHub托管地址:
Revel是一个高生产力的Go语言Web框架。Revel框架支持热编译,当编辑、保存和刷新源码时,Revel会自动编译代码和模板;全栈特性,支持路由、参数解析、缓存、测试、国际化等功能。
GitHub托管地址:
一个Go语音编写的开源分布式的时序、事件和指标数据库,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展。
GitHub托管地址:
Gogs则是一款由国人无闻( GitHub)开发的自助Git服务项目。Gogs的目标是打造一个最简单、最快速和最轻松的方式搭建自助Git服务。据作者称,之所以选择使用Go语言开发,就是Go允许Gogs可以通过独立的二进制分发,且对跨平台有良好支持。
GitHub托管地址:
我们回顾一下我们主要讲解了go语言的历史,它是一个什么样子的语言它的特性是怎么样的,有那些有名的开源项目,大家是不是对go语言充满了期待,也充满了疑惑呢,那么就请大家带着期待带着疑惑的心里,来进入下一篇的GO语言-安装与Helloworld篇吧!
注:笔者能力有限有说的不对的地方希望大家能够指出,也希望多多交流!
转载地址:http://eryax.baihongyu.com/