Golang全新系列:第一章 golang基础介绍
第一章:golang基础
1.1 go语言简介
1.1.1 GO语言是什么
Go是一种开源的程序设计语言,它意在使得人们能够方便地构建简单、可靠、高效率的软件”(来自go官网golang.org)
我们程序员在开发程序,开发软件时都会选择一门编程语言,那么我们应该怎样进行选择呢?可能有同学会说,我们要选择一门简单的,容易学习的,而且开发效率高的,能够在很短的时间内开发完成一个软件,这样老板会非常的满意,能够升职加薪,Python语言或者Ruby语言就非常适合这种快速开发。但是问题是,用这种语言开发的软件,当用户量多了,运行的速度会非常慢,给人的感觉就是非常卡,大家想一下这种软件还有人愿意使用吗?那可能又有同学说了,我们要学习运行速度快的编程语言,例如C或者是C++,但是这类编程语言学习难度是非常大的。那么有没有一种编程语言,学习非常简单,开发速度非常快,开发出的软件电脑运行速度非常快呢?有,就是我们今天开始学习的GO语言。GO 语言借鉴了Python等其它编程语言简单,易学,生产效率高,同时GO语言专门针对多处理器(多核CPU,在这里可以给学生看一下windows下的多核CPU,)系统的程序进行了优化(让每核CPU都能够执行GO语言开发的程序),这样使用GO语言开发的程序运行的速度可以媲美C或C++开发程序的速度。
1.1.2 Go的优势
1、运行速度快,简单易学
2、薪水待遇高
3、适合区块链开发
4、跨平台
5、丰富的标准库(指令),Go目前已经内置了大量的库,特别是网络库非常强大(开发飞秋软件)
6、Go里面也可以直接包含C代码,利用现有的丰富的C库
7、语言层面支持并发,这个就是Go最大的特色,天生的支持并发。所谓并发,所有正在运行的程序轮流使用CPU,每个程序允许占用CPU的时间非常短(比如10毫秒),这样用户根本感觉不出来CPU是在轮流为多个程序服务,就好象所有的程序都在不间断地运行一样。并发好处就是可以运行多个程序,并不卡顿。
1.1.3 Go可以做什么
1、网络编程,这一块目前应用最广,例如网站开发。
2、服务器编程,例如:处理日志,处理文件。(在网站开发的过程中都会涉及到)
3、区块链开发
4、环境安装
前面已经对GO语言做了一个简单的介绍,相信大家也已经基本有所了解了,那么我相信大家迫不及待的想学习GO语言了,但是我们在具体学习GO语言前,需要先安装GO的开发环境,只有把GO的开发环境安装好了,才能有GO语言的指令来开发网站,飞秋等等软件。也就是所谓的环境安装,就是将GO语言的指令都安装在你的电脑上,那么你在开发软件的时候就可以直接用了。
1.1.4 Go学习网站
Go语言官网(需要FQ):https://golang.org/
go中文社区:https://studygolang.com
go中文在线文档:https://studygolang.com/pkgdoc
1.2下载配置golang环境
1.2.1 下载
官网地址:https://golang.org,但是现在被墙了,所以可以从这个地址下载 :https://studygolang.com/dl。
1.2.2安装golang
直接下一步的方式安装就可以了,不再详细来说了。
1.2.3测试环境
在安装了golang之后,可以写个程序测试一下环境是否正常:
第一步:在d盘根目录下创建一个文件,取名为a.go,内容如下
package main import("fmt") func main() { fmt.Println("hello world") }
第二步:在cmd中执行a.go,如下
go run a.go
1.3 集成开发环境
go的集成开发环境有很多,但是比较好用的主要有vscode和goland,我们后面的程序都是基于goland来写的。
具体安装goland的方法就不在写了,这就是在windows中安装程序的过程,唯一需要注意的就是可能需要用激活码,如果想省事的话,可以从某宝上买一个激活码。
1.4 注释
1.4.1 注释的用途
在前面我们已经写过第一个GO程序了,该程序的功能很简单,代码量不是很多,也就是几行代码。但是大家看下面这段代码,代码量比我们写的第一个程序代码量多了很多,代码多了以后,阅读起来非常不容易。
package main import “fmt” func main() { var n [10]int var i,j int for i=0; i<10;i++ { n[i] = i+100 } for i = 0;j<10;j++ { fmt.Println("Element[%d] = %d\n", j,n[j]) } }
接下来,在看下面的代码,由于在一些代码行上有汉字,所以阅读起来就很方便。
package main import "fmt" func main() { var n [10]int /* n是一个长度为10的数组 */ var i,j int /* 为数组n初始化元素 */ for i = 0; i < 10; i++ { n[i] = i + 100 /* 设置元素为i+100 */ } /* 输出每个数组元素的值 */ for i = 0; j < 10; j++ { fmt.Println("Element[%d] = %d\n", j,n[j]) } }
我们通过用自己熟悉的语言(例如,汉语),在程序中对某些代码进行标注说明,这就是注释的作用,能够大大增强程序的可读性。以后,在公司中做开发,其他程序员会经常阅读我们写的代码,当然,我们也会经常阅读别的程序员写的代码,如果代码中加了注释,那么阅读起来就非常容易了。
1.5 注释分类
1.5.1单行注释
所谓单行注释,就是每次给一行代码加注释,你可以在任何地方使用以 // 开头的单行注释,比如下例子中:
fmt.Println("hello go") //将信息输出到屏幕上
以//开头,//右边的所有东西当做说明,而不是真正要执行的程序,起辅助说明作用
1.5.2多行注释
若果代码量比多,每行加注释,比较麻烦,可以使用多行注释。
func main() { /* 以下两行代码都是将信息打印在屏幕上 */ fmt.Println("hello go") fmt.Println("I love you") }
除了给代码加上说明,用注释以外,如果你写的代码不想让计算机执行,那么也可以加上注释。加了注释后代码不会被编译执行,这就是对已有的代码进行注销。