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 相关文章推荐
Go各时间字符串使用解析
Apr 02 Golang
Go Gin实现文件上传下载的示例代码
Apr 02 Golang
Golang 正则匹配效率详解
Apr 25 Golang
goland 清除所有的默认设置操作
Apr 28 Golang
golang通过递归遍历生成树状结构的操作
Apr 28 Golang
彻底理解golang中什么是nil
Apr 29 Golang
golang 在windows中设置环境变量的操作
Apr 29 Golang
golang 语言中错误处理机制
Aug 30 Golang
Go语言基础map用法及示例详解
Nov 17 Golang
Go语言基础切片的创建及初始化示例详解
Nov 17 Golang
简单聊聊Golang中defer预计算参数
Mar 25 Golang
golang三种设计模式之简单工厂、方法工厂和抽象工厂
Apr 10 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
PHP 和 MySQL 基础教程(四)
2006/10/09 PHP
PHP中的正规表达式(一)
2006/10/09 PHP
IP138 IP地址查询小偷实现代码
2010/02/15 PHP
php下获取http状态的实现代码
2014/05/09 PHP
PHP curl 或 file_get_contents 获取需要授权页面的方法
2017/05/05 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
2018/05/12 PHP
详解json在php中的应用
2018/09/30 PHP
php中使用array_filter()函数过滤数组实例讲解
2021/03/03 PHP
javascript代码运行不出来执行错误的可能情况整理
2013/10/18 Javascript
javaScript如何生成xmlhttp
2013/12/16 Javascript
JQuery EasyUI 加载两次url的原因分析及解决方案
2014/08/18 Javascript
jQuery实现切换字体大小的方法
2015/03/10 Javascript
BootStrap制作导航条实例代码
2016/05/06 Javascript
超链接怎么正确调用javascript函数
2016/05/23 Javascript
利用canvas中toDataURL()将图片转为dataURL(base64)的方法详解
2017/11/20 Javascript
基于$.ajax()方法从服务器获取json数据的几种方式总结
2018/01/31 Javascript
js判断输入框不能为空格或null值的实现方法
2018/03/02 Javascript
JavaScript调用模式与this关键字绑定的关系
2018/04/21 Javascript
小程序实现列表删除功能
2018/10/30 Javascript
详解webpack引入第三方库的方式以及注意事项
2019/01/15 Javascript
Vue.js组件通信之自定义事件详解
2019/10/19 Javascript
ES6函数和数组用法实例分析
2020/05/23 Javascript
[45:25]OG vs EG 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
Python中几种操作字符串的方法的介绍
2015/04/09 Python
Python中的迭代器与生成器高级用法解析
2016/06/28 Python
python如何创建TCP服务端和客户端
2018/08/26 Python
python ftp 按目录结构上传下载的实现代码
2018/09/12 Python
python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)
2019/08/06 Python
Windows10+anacond+GPU+pytorch安装详细过程
2020/03/24 Python
弄清Pytorch显存的分配机制
2020/12/10 Python
Python Socket多线程并发原理及实现
2020/12/11 Python
python实现PolynomialFeatures多项式的方法
2021/01/06 Python
HTML5中使用postMessage实现Ajax跨域请求的方法
2016/04/19 HTML / CSS
公司会计岗位职责
2014/02/13 职场文书
领导调研接待方案
2014/02/27 职场文书
忠诚与背叛观后感
2015/06/04 职场文书