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
goland设置颜色和字体的操作
May 05 Golang
完美解决golang go get私有仓库的问题
May 05 Golang
解决golang 关于全局变量的坑
May 06 Golang
golang 实现时间戳和时间的转化
May 07 Golang
go语言中http超时引发的事故解决
Jun 02 Golang
Go语言应该什么情况使用指针
Jul 25 Golang
Golang表示枚举类型的详细讲解
Sep 04 Golang
Go语言基础map用法及示例详解
Nov 17 Golang
golang三种设计模式之简单工厂、方法工厂和抽象工厂
Apr 10 Golang
GO语言字符串处理函数之处理Strings包
Apr 14 Golang
Golang Elasticsearches 批量修改查询及发送MQ
Apr 19 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
2.PHP入门
2006/10/09 PHP
php Sql Server连接失败问题及解决办法
2009/08/07 PHP
php中JSON的使用与转换
2015/01/14 PHP
php 类中的常量、静态属性、非静态属性的区别
2017/04/09 PHP
基于jQuery的360图片展示实现代码
2012/06/14 Javascript
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
2013/05/15 Javascript
js写的评论分页(还不错)
2013/12/23 Javascript
JavaScript用Number方法实现string转int
2014/05/13 Javascript
js利用prototype调用Array的slice方法示例
2014/06/09 Javascript
理解Javascript文件动态加载
2016/01/29 Javascript
JS判断指定dom元素是否在屏幕内的方法实例
2017/01/23 Javascript
vue过渡和animate.css结合使用详解
2017/06/14 Javascript
vue-cli如何添加less 以及sass
2017/07/06 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
2017/12/07 Javascript
详解用Node.js写一个简单的命令行工具
2018/03/01 Javascript
Angular Material Icon使用详解
2018/11/07 Javascript
vue-loader中引入模板预处理器的实现
2019/09/04 Javascript
layui 富文本图片上传接口与普通按钮 文件上传接口的例子
2019/09/23 Javascript
vue2.* element tabs tab-pane 动态加载组件操作
2020/07/19 Javascript
windows下安装python paramiko模块的代码
2013/02/10 Python
用实例说明python的*args和**kwargs用法
2013/11/01 Python
Python实现文件信息进行合并实例代码
2018/01/17 Python
Python模拟登录的多种方法(四种)
2018/06/01 Python
Python with用法:自动关闭文件进程
2019/07/10 Python
python使用rsa非对称加密过程解析
2019/12/28 Python
python中count函数简单的实例讲解
2020/02/06 Python
使用python的pyplot绘制函数实例
2020/02/13 Python
python 匿名函数与三元运算学习笔记
2020/10/23 Python
利用python爬取有道词典的方法
2020/12/08 Python
利用css3画个同心圆示例代码
2017/07/03 HTML / CSS
英国专业美容产品在线:Mylee(从指甲到脱毛)
2020/07/06 全球购物
先进德育工作者事迹材料
2014/01/24 职场文书
公司员工检讨书
2014/02/08 职场文书
弘扬职业精神演讲稿
2014/03/20 职场文书
英语课前三分钟演讲稿(6篇)
2014/09/13 职场文书
Java tomcat手动配置servlet详解
2021/11/27 Java/Android