Go语言基础知识点介绍


Posted in Golang onJuly 04, 2021

Go 语言教程

Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。

Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。

Go 语言特色

  • 简洁、快速、安全
  • 并行、有趣、开源
  • 内存管理、数组安全、编译迅速

Go 语言用途

Go 语言被设计成一门应用于搭载 Web 服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。

对于高性能分布式系统领域而言,Go 语言无疑比大多数其它语言有着更高的开发效率。它提供了海量并行的支持,这对于游戏服务端的开发而言是再好不过了。

第一个 Go 程序

接下来我们来编写第一个 Go 程序 hello.go(Go 语言源文件的扩展是 .go),代码如下:

package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}

要执行 Go 语言代码可以使用 go run 命令。

执行以上代码输出:

$ go run hello.go
Hello, World!

此外我们还可以使用 go build 命令来生成二进制文件:

$ go build hello.go
$ ls
hello hello.go
$ ./hello
Hello, World!

基础知识点扩展:

计算机软件经历了数十年的发展,形成了多种学术流派,有面向过程编程、面向对象编程、函数式编程、面向消息编程等,这些思想究竟孰优孰劣,众说纷纭。

除了OOP外,近年出现了一些小众的编程哲学,Go语言对这些思想亦有所吸收。例如,Go语言接受了函数式编程的一些想法,支持匿名函数与闭包。再如,Go语言接受了以Erlang语言为代表的面向消息编程思想,支持goroutine和通道,并推荐使用消息而不是共享内存来进行并发编程。总体来说,Go语言是一个非常现代化的语言,精小但非常强大。

Go 语言最主要的特性:

  • 自动垃圾回收
  • 更丰富的内置类型
  • 函数多返回值
  • 错误处理
  • 匿名函数和闭包
  • 类型和接口
  • 并发编程
  • 反射
  • 语言交互性

到此这篇关于Go语言基础知识点介绍的文章就介绍到这了,更多相关Go语言教程内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Golang 相关文章推荐
使用Golang的channel交叉打印两个数组的操作
Apr 29 Golang
Golang中interface{}转为数组的操作
Apr 30 Golang
浅谈golang 中time.After释放的问题
May 05 Golang
Go遍历struct,map,slice的实现
Jun 13 Golang
Golang的继承模拟实例
Jun 30 Golang
详解Go语言Slice作为函数参数的使用
Jul 02 Golang
使用GO语言实现Mysql数据库CURD的简单示例
Aug 07 Golang
Go Plugins插件的实现方式
Aug 07 Golang
详解Golang如何优雅的终止一个服务
Mar 21 Golang
深入理解 Golang 的字符串
May 04 Golang
详解Go语言中配置文件使用与日志配置
Jun 01 Golang
Go gRPC进阶教程gRPC转换HTTP
Jun 16 Golang
详解Go语言Slice作为函数参数的使用
Jul 02 #Golang
golang 实用库gotable的具体使用
Jul 01 #Golang
试了下Golang实现try catch的方法
Jul 01 #Golang
Golang 语言控制并发 Goroutine的方法
Jun 30 #Golang
Golang的继承模拟实例
Jun 30 #Golang
go select编译期的优化处理逻辑使用场景分析
Go 语言下基于Redis分布式锁的实现方式
Jun 28 #Golang
You might like
解决phpmyadmin中文乱码问题。。。
2007/01/18 PHP
php simplexmlElement操作xml的命名空间实现代码
2011/01/04 PHP
记录mysql性能查询过程的使用方法
2013/05/02 PHP
PHP魔术方法的使用示例
2015/06/23 PHP
php版微信自定义回复功能示例
2016/12/05 PHP
JavaScript浏览器选项卡效果
2010/08/25 Javascript
DIV菜单层实现代码
2010/11/19 Javascript
jQuery 过滤方法filter()选择具有特殊属性的元素
2014/06/15 Javascript
JavaScript学习笔记之定时器
2015/01/22 Javascript
jQuery mobile转换url地址及获取url中目录部分的方法
2015/12/04 Javascript
Vue表单实例代码
2016/09/05 Javascript
js学习之----深入理解闭包
2016/11/21 Javascript
JS实现旋转木马式图片轮播效果
2017/01/18 Javascript
react.js 获取真实的DOM节点实例(必看)
2017/04/17 Javascript
React-router v4 路由配置方法小结
2017/08/08 Javascript
微信小程序实现顶部选项卡(swiper)
2020/06/19 Javascript
在vue中实现简单页面逆传值的方法
2017/11/27 Javascript
Javascript获取某个月的天数
2018/05/30 Javascript
微信开发之微信jssdk录音功能开发示例
2018/10/22 Javascript
Vue实现导航栏点击当前标签变色功能
2020/08/19 Javascript
[47:48]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第三局
2016/02/28 DOTA
[47:38]Optic vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
TensorFlow的权值更新方法
2018/06/14 Python
Python3爬虫全国地址信息
2019/01/05 Python
python批量识别图片指定区域文字内容
2019/04/30 Python
使用python实现对元素的长截图功能
2019/11/14 Python
python 基于UDP协议套接字通信的实现
2021/01/22 Python
小橄榄树:Le Petit Olivier
2018/04/23 全球购物
整个世界的设计师家具在哈恩:Designathome
2019/03/25 全球购物
清洁工表扬信
2014/01/08 职场文书
优秀员工评语
2014/02/10 职场文书
技术员个人工作总结
2015/03/03 职场文书
2015年控辍保学工作总结
2015/05/18 职场文书
五年级作文之劳动作文
2019/11/12 职场文书
浅谈如何提高PHP代码的质量
2021/05/28 PHP
golang内置函数len的小技巧
2021/07/25 Golang