系列文章目录
第二章:【Golang系列篇】Go基础-环境安装、Go程序初体验
大家好,我是无名小歌。
好久不见啊,各位!!!停更快2个月了,在这期间,忙于备赛国赛的内容(比赛前二十几天),也就全身心的一头扎了进去,比赛完之后呢也因为各种琐事和各种为了放松的心态,以至于直到今天才重新回来。
准备出go语言的系列内容,希望您不要错过,期待你的关注。
首先介绍的是golang编程语言的开山篇 。
看完你会懂的为什么出现Go、为什么学习Go、Go应用领域、Go的特性等等。
欢迎加入云社区
一、Go概述
Go 是一种静态强类型、编译型、一个开源的编程语言。
静态强类型:性能很好(如:c/c++…)
二、Go的诞生
2.1、创建Go的三大牛人!!!
- Ken Thompson(肯·汤普森):美国计算机科学学者与软件工程师,任职于贝尔实验室Entrisphere, IncGoogle Inc。与丹尼斯·里奇同为1983年图灵奖得主。他与丹尼斯·里奇设计了B语言、C语言,创建了Unix和Plan 9操作系统,编程语言Go的共同作者。发展正规表示法,写作了早期的电脑文字编辑器QED与ed,定义UTF-8编码,以及发展电脑象棋。
- Rob Pike(罗布·派克):Unix的先驱,是贝尔实验室最早和Ken Thompson以及 Dennis M. Ritche 开发Unix的猛人,UTF-8的设计人。 他还在美国名嘴David Letterman 的晚间节目上露了一小脸,一脸憨厚地帮一胖子吹牛搞怪。让偶佩服不已的是,罗伯伯还是1980年奥运会射箭的银牌得主。他还是个颇为厉害的业余天文学家,设计的珈玛射线望远镜差点被NASA用在航天飞机上。Rob Pike AT&T Bell Lab前Member of Technical Staff ,现在google研究操作系统。
- Robert Griesemer:曾协助制作Java的HotSpot编译器,和Chrome浏览器的JavaScript引擎v8。
2.2、为什么出现Go???
- 计算机硬件技术更新频繁,以至于性能提生很快。而对应的主流的编程语言更新迭代明显落后于计算机硬件的发展,所有这里出现一个问题,编程语言不能有效合理利用多核多CPU的特性来提升软件系统的性能,造成了资源的浪费。
- 随之时间推移,现在主流的语言编写的软件系统(或项目)的复杂度越来越高,维护成本也越来越高,所以目前缺乏一个只够简洁高效的编程语言。(现有的编程语言缺点:风格不统一、计算能力不够、处理大并发不够)
- c/c++编写的程序运行速度虽然很快,但它编译速度却很慢,还存在内存泄漏的问题。
综上所述,为了解决这些问题,造就了Golang的诞生。
内存泄漏(Memory Leak):指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。
2.3、Go的发展简史
针对如上的各种情况,于是在2007年,谷歌工程师Ken Thompson(肯·汤普森)、Rob Pike(罗布·派克)、Robert Griesemer 他们正式开始Golang的设计与开发。
2009年11月正式开源发布;
2012年3月,正式发布1.0版,走向成熟;
2015年8月,发布了1.5版,移除最后残余的 “C代码”;
2017年2月,发布1.8版
2017年8月,发布1.9版
2018年2月,发布1.10版
2018年8月,发布1.11版
2019年2月,发布1.12版
三、为什么要学习Go!!!
Go语言是区块链最主流的编程语言。Go语言是Google公司创建的语言,也是Google主推语言。
国外大公司如:Google、AWS、Cloudfllare、CoreOS;国内大公司如:七牛、阿里、百度、腾讯、头条、京东、小米、哔哩哔哩等都已经大规模使用Golang开发其云计算相关产品。
跟上时代步伐,才不会被时代淘汰。
特点:
Go语言保证了既能到达静态编译语言的安全和性能,又达到了动态语言开发维护的高效率,使用一个表达式来形容Go语言:Go =C+ Python,说明Go语言既有c静态语言程序的运行速度,又能达到Python动态语言的快速开发。
静态语言:性能很好(如:c/c++…)
动态语言:开发效率快(如:python)
四、Go应用领域
区块链开发工程师
Go服务器端/游戏软件工程师
Golang分布式/云计算软件工程师
最后
我是无名小歌,欢迎大家一键三连、加入云社区
(⊙o⊙),我们下期再见!!!