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原生库的中bytes.Buffer用法
Apr 25 Golang
golang slice元素去重操作
Apr 30 Golang
golang DNS服务器的简单实现操作
Apr 30 Golang
解决go在函数退出后子协程的退出问题
Apr 30 Golang
Golang: 内建容器的用法
May 05 Golang
golang switch语句的灵活写法介绍
May 06 Golang
go语言基础 seek光标位置os包的使用
May 09 Golang
Golang标准库syscall详解(什么是系统调用)
May 25 Golang
Golang的继承模拟实例
Jun 30 Golang
Go语言安装并操作redis的go-redis库
Apr 14 Golang
GoFrame基于性能测试得知grpool使用场景
Jun 21 Golang
Go 内联优化让程序员爱不释手
Jun 21 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实现的获取URL信息的类
2007/01/02 PHP
认识并使用PHP超级全局变量
2010/01/26 PHP
Thinkphp的volist标签嵌套循环使用教程
2014/07/08 PHP
php使用array_search函数实现数组查找的方法
2015/06/12 PHP
为你总结一些php系统类函数
2015/10/21 PHP
PHP内存缓存功能memcached示例
2016/10/19 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
select标签模拟/美化方法采用JS外挂式插件
2013/04/01 Javascript
javascript对下拉列表框(select)的操作实例讲解
2013/11/29 Javascript
javaScript年份下拉列表框内容为当前年份及前后50年
2014/05/28 Javascript
jquery text()方法取标签中的文本
2014/07/25 Javascript
基于jquery实现图片放大功能
2016/05/07 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
Javascript 数组去重的方法(四种)详解及实例代码
2016/11/24 Javascript
工厂模式在JS中的实践
2017/01/18 Javascript
JS如何设置元素样式的方法示例
2017/08/28 Javascript
vue中axios请求的封装实例代码
2019/03/23 Javascript
JavaScript迭代器的含义及用法
2019/06/21 Javascript
在Chrome DevTools中调试JavaScript的实现
2020/04/07 Javascript
17个Python小技巧分享
2015/01/23 Python
Python中MySQL数据迁移到MongoDB脚本的方法
2016/04/28 Python
详解Python读取配置文件模块ConfigParser
2017/05/11 Python
Python实现连接postgresql数据库的方法分析
2017/12/27 Python
详解python使用递归、尾递归、循环三种方式实现斐波那契数列
2018/01/16 Python
使用Django简单编写一个XSS平台的方法步骤
2019/03/25 Python
python实现最小二乘法线性拟合
2019/07/19 Python
Python编程学习之如何判断3个数的大小
2019/08/07 Python
scikit-learn线性回归,多元回归,多项式回归的实现
2019/08/29 Python
导入tensorflow时报错:cannot import name 'abs'的解决
2019/10/10 Python
利用css3如何设置没有上下边的列表间隔线
2017/07/03 HTML / CSS
Dr. Martens马汀博士法国官网:马丁靴鼻祖
2020/01/15 全球购物
波兰汽车配件网上商店:iParts.pl
2020/09/08 全球购物
不用游标的SQL语句有哪些
2012/09/07 面试题
组织鉴定材料
2014/06/02 职场文书
2015年幼师工作总结
2015/04/28 职场文书
项目投资意向书范本
2015/05/09 职场文书