一、概述
本文为Go语言学习入门第一篇,《Go语言入门》如何在Windows下安装Go语言编程环境 。主要讲Go语言编译环境的安装以及基于Notepad++(Go语言插件、语法高亮)的开发环境配置。

先鼓吹一下Go语言:

GO是强类型语言,这一点倒类似C++,在使用一个变量前必须明确该变量的类型。当然了,GO可以不写变量类型而让编译器来推导出变量类型,这一点C++11中的auto关键字也做到了,当然那样我还要写一个auto,而GO不用。另外还要补充的一点是,GO也是静态类型语言,编译时就知道变量类型,一个变量一旦被声明成一个类型,就不可以变为另一个类型(除非类型转换,但是也只能在兼容类型之间做类型转换,比如int不可以转换为string),相比于动态类型语言(Python),速度要快很多。
GO是编译型语言。编译型语言相对于解释型语言最大的好处就是它的速度非常快。因此上面的说的静态类型+编译型语言,就决定了GO语言程序的运行速度,GO具有堪比与C的运行速度(当然C还是最快的),和C++的运行速度也是差不多了,比Python差不多要快30倍
GO具有脚本化的语法,语法简单。说真的,作为一个C++忠实用户,我也觉得C++的语法太复杂了,所以这也是我转型的一个方面,写的代码少并且完成效率差不多毕竟是个好事。后续的学习过程中,一些语法方面的细节,我也会仔细分析和C++的差别
支持多种编程范式,包括函数式编程以及面向对象编程。不过需要注意的是,GO并没有像C++和Java一样有一个class来表示类,它本身其实没有对象这样的概念,是用strcut来模拟面向对象的。因为没有对象,所以GO语言也没有继承多态这些概念(这些东西其实都是由接口来实现的),也没有泛型编程(学C++的时候继承多态确实把我学的够呛)。那么GO语言有什么?GO语言有接口,函数式编程,接口interface在GO语言中是一个很重要的东西,面向接口的编程也是GO的一个主流编程范式
GO语言相比于别的语言最大的好处就是,GO原生的支持并发。像我在写C++的时候,都是调用一些系统调用来创建线程(其实C++有自己封装的和线程相关的函数,我没用而已)。这里需要注意的是原生的支持和通过第三方库来支持的区别,GO是在语法上支持,而C++需要调用第三方库来支持(std::thread,其实也是一个C++的标准库吧)。这部分概念其实还是要到后面真正学到GO并发了才会了解到,所以这里先“吹”为敬。之后会学到goroutine和channel,这是GO并发的关键
二、下载安装包
安装包下载地址:https://golang.google.cn/dl/

这里选择下载Windows版本,点击链接直接下载。

三、开始安装

一路下一步就行了,没什么需要设置的,安装目录最好保持默认,避免遇到一些怪问题。

 

验证:

1、任意目录下,直接执行“go”,能看到类似以下内容


2、运行 go verison 命令

四、第一个Go语言程序——HelloWorld

4.1、编写HelloWorld

package main
import "fmt"
func main() {
    fmt.Printf("Hello, world.\n")
}

 

将以下代码保存到“C:\Go\work\src\hello\hello.go”。

4.2、使用go run命令执行

4.3、使用go install命令执行

注意“go run”和“go install”以及“go build”命令的区别!“go run”命令在“.go”文件所在的目录执行就可以,

但要执行“go install”以及“go build”命令“.go”文件必须在“$GOROOT”或“$GOPATH”目录下!

 

小结
开始环境到这里就配置完成了,如果你不喜欢用Notepad++,还有vscode、sublime、LiteIDE等IDE可用。

 

智一面王老师说运维推荐初级Golang开发工程师在线评测:http://www.gtalent.cn/exam/interview/FM2N7xj54dQBPfUE

王老师说运维之go语言菜鸟入门:http://www.codeforest.cn/course/474