Win11系统下搭建Go lang开发环境更换国内源并且体验宇宙最快框架Iris

简介: 最近有同学开始尝试接触Go lang,拥抱新技术永远都会是一个好习惯,之前的一篇文章介绍了[如何在Mac os系统下配置Go lang开发环境](https://v3u.cn/a_id_88),这次我们在Win10系统下进行配置,并且更换国内的安装源,最后再和“全宇宙最快的web框架”--Iris亲密接触一下,对于Iris可能很多朋友并不熟悉,一般Go lang在web开发领域相对著名的框架比如Beego或者Gin都名声在外,这里推荐Iris的原因也并不是因为它源于古希腊女神(彩虹女神)的炫酷名字,而是因为它在goroutine的加持下强大的Go http server的性能。

最近有同学开始尝试接触Go lang,拥抱新技术永远都会是一个好习惯,之前的一篇文章介绍了如何在Mac os系统下配置Go lang开发环境,这次我们在Win10系统下进行配置,并且更换国内的安装源,最后再和“全宇宙最快的web框架”--Iris亲密接触一下,对于Iris可能很多朋友并不熟悉,一般Go lang在web开发领域相对著名的框架比如Beego或者Gin都名声在外,这里推荐Iris的原因也并不是因为它源于古希腊女神(彩虹女神)的炫酷名字,而是因为它在goroutine的加持下强大的Go http server的性能。

首先进入网站下载win10安装包:https://studygolang.com/dl

比之去年,go lang又前进了两个版本,目前的稳定版是1.14.4,发展势头可谓迅猛,但是这里建议还是选择go1.12.12版本,因为很多框架还不支持1.14.4,所以这里推荐的通用的稳定版本号是:go1.12.12.windows-amd64.msi

安装目录推荐安装在c:/go即可。

安装成功后,在Win10的环境变量中,系统应该会自动配置 GOROOT、GOPATH、GOBIN,请确保您的系统中配置了这三个变量,GOPATH可以理解为开发目录,GOROOT是安装目录,GOBIN则是可执行命令目录

此时如果在win10命令行输入命令

go version  
  
go version go1.12.12 windows/amd64

可以打印出版本号的话,说明安装成功。

随后是编辑器的推荐,对于初学者来说,这里还是力推vscode,因为它简单灵活,不需要各种复杂解释器的配置,只需要安装 CodeRunner和Go这两个插件就足以支撑你敏捷编写go lang了

重启vscode

新建test.go

package main  
import "fmt"  
  
func main() {  
    fmt.Println("hello go!")  
}

右键 "Run Code"

编辑器配置好以后,现在我们尝试安装一些基于Go lang的三方库,一般情况下我们使用 go get 来进行安装,它在使用上有点类似于python的pip,但是令人遗憾的是,国内用户无法直接使用它,因为被屏蔽了,所以在安装Iris之前,我们需要针对go get来更换国内源,这里我们使用阿里云的源,在命令行输入下面两个命令

set GO111MODULE=on  
  
set GOPROXY=https://mirrors.aliyun.com/goproxy

开启GO111MODULE模块然后指定代理地址https://mirrors.aliyun.com/goproxy,需要注意的是,如果重启了电脑,你指定源会被复位,所以最好将这两个变量也加入到环境变量的设置中,可以确保永久生效。

之后就可以安心的使用 go get 来安装彩虹女神Iris了

go get -v -u github.com/kataras/iris

阿里云cdn镜像的速度还是非常给力的

安装好以后,可以在go的安装目录新建一个项目文件夹,编写main.go文件

package main  
   
import (  
    "github.com/kataras/iris"  
    "github.com/kataras/iris/middleware/logger"  
    "github.com/kataras/iris/middleware/recover"  
)  
   
func main() {  
    app := iris.New()  
    app.Logger().SetLevel("debug")  
    app.Use(recover.New())  
    app.Use(logger.New())  
    app.Get("/", func (ctx iris.Context){  
        ctx.HTML("你好,女神")  
    })  
   
    app.Run(iris.Addr(":8081"), iris.WithoutServerError(iris.ErrServerClosed))  
}

这里我们让Iris跑在8081端口上,进入main.go所在的目录,敲入命令

go run main.go

在编译过程中,可能会报错一些依赖库未找到,此时不用担心,反复执行go run main.go命令进行依赖库的下载,最后把所有依赖都安装好后,就可以编译成功,最后运行

打开浏览器,访问http://localhost:8081/

那么关于Iris的安装和配置就到这里,以后会分享一些更多关于Iris的开发经验。

相关文章
|
23天前
|
存储 算法 Go
go语言并发实战——日志收集系统(七) etcd的介绍与简单使用
go语言并发实战——日志收集系统(七) etcd的介绍与简单使用
|
23天前
|
监控 Go
go语言并发实战——日志收集系统(八) go语言操作etcd以及利用watch实现对键值的监控
go语言并发实战——日志收集系统(八) go语言操作etcd以及利用watch实现对键值的监控
go语言并发实战——日志收集系统(八) go语言操作etcd以及利用watch实现对键值的监控
|
23天前
|
消息中间件 存储 监控
go语言并发实战——日志收集系统(六) 编写日志收集系统客户端
go语言并发实战——日志收集系统(六) 编写日志收集系统客户端
|
12天前
|
JavaScript
vue : 无法加载文件 D:\module\npm_module\npm_modules\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.c
vue : 无法加载文件 D:\module\npm_module\npm_modules\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.c
|
23天前
|
监控 Go
go语言并发实战——日志收集系统(十一)基于etcd来监视配置文件的变化
go语言并发实战——日志收集系统(十一)基于etcd来监视配置文件的变化
|
23天前
|
监控 Go
go语言并发实战——日志收集系统(十) 重构tailfile模块实现同时监控多个日志文件
go语言并发实战——日志收集系统(十) 重构tailfile模块实现同时监控多个日志文件
|
23天前
|
存储 JSON 监控
go语言并发实战——日志收集系统(九) 基于etcd的代码重构思考与初步实现
go语言并发实战——日志收集系统(九) 基于etcd的代码重构思考与初步实现
|
3天前
|
JSON 测试技术 Go
零值在go语言和初始化数据
【7月更文挑战第10天】本文介绍在Go语言中如何初始化数据,未初始化的变量会有对应的零值:bool为`false`,int为`0`,byte和string为空,pointer、function、interface及channel为`nil`,slice和map也为`nil`。。本文档作为指南,帮助理解Go的数据结构和正确使用它们。
52 22
零值在go语言和初始化数据
|
5天前
|
安全 算法 程序员
在go语言中使用泛型和反射
【7月更文挑战第8天】本文介绍go支持泛型后,提升了代码复用,如操作切片、映射、通道的函数,以及自定义数据结构。 泛型适用于通用数据结构和函数,减少接口使用和类型断言。
62 1
在go语言中使用泛型和反射