内容简介:Go是一门开放源码的编程语言,可容易的构建简单、可靠和高效的软件Go语言是由谷歌的开发工程师(罗伯特·格瑞史莫、罗布·派克、肯·汤普逊等)于2007年开始设计,利用20%的自由时间开发的实验项目,并于2009年以BSD-style授权(完全开源)首次公开发布,于2012年正式发布。开发者使用编程语言的三大分类(执行速度、简易程度、开发难度):
简介
Go是一门开放源码的编程语言,可容易的构建简单、可靠和高效的软件
历史
Go语言是由谷歌的开发工程师(罗伯特·格瑞史莫、罗布·派克、肯·汤普逊等)于2007年开始设计,利用20%的自由时间开发的实验项目,并于2009年以BSD-style授权(完全开源)首次公开发布,于2012年正式发布。
- 罗布·派克:Unix小组成员,参与Plan9和Inferno操作系统,Limbo语言和UTF-8编码主要设计者,《Unix编程环境》,《编程实践》作者之一
- 肯·汤普逊:B语言和 C语言 设计者,Unix和Plan9操作系统创立者之一,1983年图灵奖获得者
- 罗布特·格瑞史莫:参与制作 JAVA 的HotSpot编译器及Chrome浏览器JAVASCRIPT引擎V8
创造
开发者使用编程语言的三大分类(执行速度、简易程度、开发难度):
- 执行速度快、编译速度慢(编译型):C,C++
- 执行速度较慢、编译速度快(解释型): JAVA,.NET
- 执行速度慢、开发难度小(动态脚本):Python,PHP
Go语言在3个条件做了平衡:易于开发、快速编译、高效执行
特性
Go语言被称为21世纪的C语言,Go从其他开发语言的借鉴了许多优秀的设计思想,例如从C语言借鉴表达式、流程控制、基础数据类型、参数传递、指针等,从Oberon-2语言借鉴的包的导入和声明等,从Oberon语言借鉴的面向对象特性中方法的声明语法,从Limbo语言中借鉴的CSP(通信顺序进程,
communicating sequential
processes),从APL语言借鉴的iota语法,从Scheme语言借鉴的作用域和嵌套函数……
- 静态类型并具有丰富的内置类型:
bool、byte、rune、int、float、string、array、slice、map - 函数多返回值
- 错误处理机制:使用defer、panic、recover定义标准的错误流程
- 语言层并发:使用关键字 go 将函数以Goroutine方式运行,使用CSP模型作为Goroutine的通信方式
- 面向对象:使用类型、组合、接口来实现面向对象思想
- 反射
- CGO:用于调用C语言实现的模块
- 自动垃圾回收
- 静态编译
- 交叉编译
- 易于部署
- 基于BSD协议完全开放
应用
Go语言主要用于服务端开发,其定位是开发大型软件,常用于:
- 服务器编程:日志处理、数据打包、虚拟机处理、文件系统
- 分布式系统、数据库代理等
- 网络编程:Web应用、API应用、下载应用
- 内存数据库
- 云平台
- 机器学习
- 区块链
- ......
使用Go开发的项目列表: https://github.com/golang/go/wiki/Projects
- Go
- docker
- kubernetes
- lantern
- etcd
- Prometheus
- Influxdb
- Consul
- nsq
- beego
- ...
使用Go开发的组织: http://go-lang.cat-v.org/organizations-using-go
- 国外:Google、CloudFlare……
- 国内:阿里、腾讯、百度、京东、爱奇艺、小米、今日头条、滴滴、美团、饿了么、360、七牛、B站、盛大、搜狗......
安装
下载地址:
Windows
-
下载安装包
01.01.png
-
安装
01.02.png
01.03.png
01.04.png
01.05.png
01.06.png
01.07.png
Linux
-
下载
01.08.png
-
安装&配置
01.09.png
01.10.png
01.11.png
以上所述就是小编给大家介绍的《01.手撕Go语言-初识》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Ajax模式与最佳实践
Christian Gross / 李锟、张祖良、蔡毅、赵泽欣 / 电子工业出版社 / 2007-3 / 49.80元
Ajax 正在将我们带入到下一代的网络应用中。 本书深入探讨了动态的网络应用,将Ajax和REST集成在一起作为单独的解决方案。一个很大的优势是,与Ajax相似,REST可以和现今存在的技术一起使用。现在上百万的客户端计算机都是基于Ajax的,上百万的服务器是基于REST的。 无论你是否已经开发过Ajax应用程序,这都是一本理想的书。因为这本书描述了各种各样的模式和最好的实践经验。通过此......一起来看看 《Ajax模式与最佳实践》 这本书的介绍吧!