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中semaphore(信号量)源码
Apr 03 Golang
Golang 如何实现函数的任意类型传参
Apr 29 Golang
Golang实现AES对称加密的过程详解
May 20 Golang
Go语言基础知识点介绍
Jul 04 Golang
Golang并发操作中常见的读写锁详析
Aug 30 Golang
golang生成vcf通讯录格式文件详情
Mar 25 Golang
Golang Elasticsearches 批量修改查询及发送MQ
Apr 19 Golang
Golang日志包的使用
Apr 20 Golang
Golang入门之计时器
May 04 Golang
Go web入门Go pongo2模板引擎
May 20 Golang
Go微服务项目配置文件的定义和读取示例详解
Jun 21 Golang
Go语言怎么使用变长参数函数
Jul 15 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实现的日历程序
2015/06/18 PHP
PHP+fiddler抓包采集微信文章阅读数点赞数的思路详解
2019/12/20 PHP
php 利用socket发送GET,POST请求的实例代码
2020/07/04 PHP
6款经典实用的jQuery小插件及源码(对话框/提示工具等等)
2013/02/04 Javascript
JS对象转换为Jquery对象实现代码
2013/12/29 Javascript
css结合js制作下拉菜单示例代码
2014/02/27 Javascript
jQuery实现table隔行换色和鼠标经过变色的两种方法
2014/06/15 Javascript
js实现网页右上角滑出会自动消失大幅广告的方法
2015/02/27 Javascript
深入理解JavaScript系列(34):设计模式之命令模式详解
2015/03/03 Javascript
JS实现从连接中获取youtube的key实例
2015/07/02 Javascript
EasyUI Pagination 分页的两种做法小结
2016/07/09 Javascript
深入理解Vue transition源码分析
2017/07/30 Javascript
详解使用vscode+es6写nodejs服务端调试配置
2017/09/21 NodeJs
vue.js实现简单轮播图效果
2017/10/10 Javascript
学习JS中的DOM节点以及操作
2018/04/30 Javascript
nodejs和react实现即时通讯简易聊天室功能
2019/08/21 NodeJs
Vue3配置axios跨域实现过程解析
2020/11/25 Vue.js
python的即时标记项目练习笔记
2014/09/18 Python
django项目运行因中文而乱码报错的几种情况解决
2017/11/07 Python
python生成lmdb格式的文件实例
2018/11/08 Python
python 求一个列表中所有元素的乘积实例
2019/06/11 Python
python 默认参数相关知识详解
2019/09/18 Python
python 实现绘制整齐的表格
2019/11/18 Python
详解Python实现进度条的4种方式
2020/01/15 Python
使用iframe+postMessage实现页面跨域通信的示例代码
2020/01/14 HTML / CSS
英国时尚服饰电商:Boohoo
2017/10/12 全球购物
毕业生自荐书模版
2014/01/04 职场文书
深入开展党的群众路线教育实践活动方案
2014/02/04 职场文书
大学生创业计划书怎么写
2014/09/15 职场文书
滞留工资返还协议书
2014/10/19 职场文书
走群众路线学习笔记
2014/11/06 职场文书
个人先进材料范文
2014/12/30 职场文书
倡议书范文大全
2015/04/28 职场文书
工程质量保证书
2015/05/09 职场文书
JavaScript 去重和重复次数统计
2021/03/31 Javascript
Win11使用CAD卡顿或者致命错误怎么办?Win11无法正常使用CAD的解决方法
2022/07/23 数码科技