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的开发经验。

相关文章
|
30天前
|
存储 Go 文件存储
M.2移动硬盘打造Win To Go系统:高效分区存储文件全攻略
【10月更文挑战第12天】本文详细介绍了如何使用M.2移动硬盘制作Win To Go系统。首先,需准备合适容量与接口类型的M.2硬盘及硬盘盒,并获取Windows镜像文件和分区工具。接着,通过Rufus软件将镜像写入硬盘。文中还提供了分区策略,包括系统分区(约80-120GB)、软件分区(根据需求设定)和数据分区(剩余空间),并指导如何使用DiskGenius或Windows自带工具进行分区。最后,强调了对各分区文件的有效管理和定期备份的重要性。
|
1月前
|
存储 固态存储 Go
M.2移动硬盘打造Win To Go系统:高效分区存储文件全攻略
【10月更文挑战第11天】Win To Go 是一种将 Windows 系统安装在 M.2 移动硬盘上的技术,便于用户携带自定义系统跨设备使用。需准备高性能 M.2 硬盘及合适硬盘盒,并使用 DiskGenius 或 Rufus 进行分区与系统安装。系统分区用于安装 Windows,其余分区可根据需求存储工作或娱乐文件,便于管理和备份。
103 2
|
2月前
|
JSON Go API
使用Go语言和Gin框架构建RESTful API:GET与POST请求示例
使用Go语言和Gin框架构建RESTful API:GET与POST请求示例
|
23天前
|
Java Go 云计算
Go语言在云计算和高并发系统中的卓越表现
【10月更文挑战第10天】Go语言在云计算和高并发系统中的卓越表现
|
3月前
|
Cloud Native JavaScript API
一文读懂云原生 go-zero 微服务框架
一文读懂云原生 go-zero 微服务框架
|
3月前
|
关系型数据库 MySQL API
我用 go-zero 一周实现了一个中台系统
我用 go-zero 一周实现了一个中台系统
|
2月前
|
消息中间件 NoSQL Go
PHP转Go系列 | ThinkPHP与Gin框架之Redis延时消息队列技术实践
【9月更文挑战第7天】在从 PHP 的 ThinkPHP 框架迁移到 Go 的 Gin 框架时,涉及 Redis 延时消息队列的技术实践主要包括:理解延时消息队列概念,其能在特定时间处理消息,适用于定时任务等场景;在 ThinkPHP 中使用 Redis 实现延时队列;在 Gin 中结合 Go 的 Redis 客户端库实现类似功能;Go 具有更高性能和简洁性,适合处理大量消息。迁移过程中需考虑业务需求及系统稳定性。
|
3月前
|
Go 开发者
|
3月前
|
存储 编译器 Go
|
3月前
|
SQL JavaScript Go
Go Web 服务框架实现详解
Go Web 服务框架实现详解