Windows

06-01 1674阅读

Windows_GoLand GO语言开发环境构建

  • 一、Go语言简介
    • (一)起源与发展
    • (二)语言特点
    • (三)应用场景
    • (四)社区与生态
    • 小结
    • 二、安装Go语言主程序
      • (一)下载
      • (二)添加环境变量
      • (三)配置环境
      • (四)检查环境变量
      • 三、安装Goland
        • (一)下载
        • (二)安装
        • (三)配置
        • 四、编写第一个程序
          • (一)启动GoLand并创建新项目
          • (二)主包和主函数
          • (三)运行程序
          • 五、GOLANG常用命令
          • 六、安装 Lingma 插件
          • 总结

            摘要:

            本文介绍了在Windows系统上使用GoLand搭建Go语言开发环境的详细步骤。首先,需要从官网下载并安装Go语言主程序,并配置环境变量,设置代理以确保模块正常下载。接着,下载并安装GoLand IDE,进行必要的配置以优化开发体验。通过GoLand创建新项目,编写并运行第一个Go程序,验证环境搭建是否成功。此外,还介绍了Go语言常用命令的使用方法,并提供了命令对照翻译。最后,介绍了如何安装Lingma插件,以提高编程效率并支持中文注释。

            关键词:GoLand、Go语言、IDE、Lingma

            一、Go语言简介

            (一)起源与发展

            1. 起源背景

            Go语言(又称Golang)是由Google的Robert Griesemer、Rob Pike和Ken Thompson于2007年开始开发的。当时,他们希望设计一种语言,能够解决C++等传统语言在大规模软件开发中遇到的问题,例如编译速度慢、并发编程复杂、代码可维护性差等。Go语言的设计目标是提高开发效率,同时保持高性能和简洁性。

            2. 发展历程

            2009年,Go语言首次公开发布。2012年,Go 1.0版本发布,标志着语言的稳定性和生态系统的初步形成。此后,Go语言不断发展,社区也迅速壮大。Go语言因其简洁的语法、强大的并发支持和高效的编译速度,逐渐成为云计算、微服务、网络编程等领域的热门语言。例如,Docker、Kubernetes等知名项目都是用Go语言编写的。

            (二)语言特点

            1. 简洁的语法

            Go语言的语法简洁明了,易于学习和使用。它去掉了许多传统语言中的复杂特性,例如继承、泛型(早期版本)等,使得代码更加直观和易读。例如,Go语言的函数定义和变量声明都非常简洁,减少了代码的冗余。这种简洁性使得开发者能够快速上手,并且可以更高效地编写和维护代码。

            2. 强大的并发支持

            Go语言内置了对并发编程的支持,这是其最大的特色之一。Go引入了goroutine(轻量级线程)和channel(通道)的概念,使得并发编程变得非常简单和直观。goroutine的创建成本极低,可以轻松创建成千上万个并发任务,而channel则用于在goroutine之间安全地传递数据。这种设计使得Go语言在处理高并发场景时表现出色,例如在Web服务器和分布式系统中。

            3. 高效的编译速度

            Go语言的编译速度非常快,这是其另一个显著优势。Go的编译器设计注重效率,能够在短时间内将代码编译为高效的机器码。与C++等语言相比,Go的编译时间大幅缩短,这使得开发和调试过程更加高效。例如,一个中等规模的Go项目可以在几秒内完成编译,而类似的C++项目可能需要数分钟。

            4. 垃圾回收机制

            Go语言内置了垃圾回收(Garbage Collection,GC)机制,自动管理内存分配和回收。这使得开发者无需手动管理内存,从而减少了内存泄漏和指针错误等问题。垃圾回收机制虽然会带来一定的性能开销,但Go语言通过优化算法,尽量减少对程序性能的影响,同时保证了开发的便捷性和程序的稳定性。

            5. 跨平台和标准库丰富

            Go语言是跨平台的,支持多种操作系统和架构,包括Windows、Linux、macOS等。同时,Go语言提供了丰富的标准库,涵盖了网络编程、文件操作、并发控制、数据结构等多个方面。例如,net/http库提供了强大的Web服务器和客户端功能,使得开发Web应用变得非常简单。标准库的丰富性使得开发者可以快速构建各种应用程序,而无需依赖外部库。

            (三)应用场景

            1. 网络编程

            Go语言在网络编程领域表现出色。其内置的net库提供了强大的网络通信功能,支持TCP、UDP、HTTP等多种协议。Go的并发模型使得处理高并发网络请求变得非常高效。例如,许多高性能的Web服务器和API网关都是用Go语言编写的。Go语言的高效编译速度和垃圾回收机制也使得网络服务的部署和维护更加方便。

            2. 微服务架构

            Go语言是微服务架构的理想选择。微服务需要快速开发、高效部署和高并发处理能力,而Go语言的这些特性正好满足需求。Go语言的编译速度快,使得微服务的开发和迭代非常迅速。同时,goroutine和channel的并发模型使得微服务能够高效地处理并发请求。例如,许多基于微服务架构的云原生应用都使用Go语言开发。

            3. 分布式系统

            Go语言在分布式系统开发中也有广泛应用。其高效的并发支持和垃圾回收机制使得分布式系统中的节点能够高效地处理任务和通信。例如,Kubernetes(容器编排系统)和Etcd(分布式键值存储)都是用Go语言编写的。Go语言的跨平台特性也使得分布式系统能够在多种环境中运行。

            4. 命令行工具

            Go语言非常适合开发命令行工具。其简洁的语法和高效的编译速度使得开发命令行工具非常方便。Go语言的flag库提供了强大的命令行参数解析功能,使得开发者可以轻松地实现复杂的命令行工具。例如,许多开源的命令行工具,如fzf(模糊查找工具)等,都是用Go语言编写的。

            (四)社区与生态

            1. 活跃的社区

            Go语言拥有一个庞大且活跃的社区。社区成员包括开发者、企业用户和开源项目贡献者。Go社区通过各种渠道交流,如GitHub、Stack Overflow、Go论坛等。社区的活跃性使得Go语言不断发展,新的功能和改进不断被提出和实现。同时,社区也为开发者提供了丰富的学习资源和帮助,例如,初学者可以通过社区提供的教程、文档和开源项目来学习Go语言。

            2. 丰富的生态系统

            Go语言的生态系统非常丰富,涵盖了从Web开发到分布式系统、从机器学习到区块链等多个领域。例如,Gin和Echo是流行的Go Web框架,它们提供了高效的路由处理和中间件支持。Beego是一个功能强大的全栈Web框架,适用于企业级应用开发。此外,Go语言在云原生领域也有广泛的应用,例如,Docker和Kubernetes等项目都基于Go语言开发,这进一步推动了Go语言在云计算和容器化领域的生态发展。

            小结

            Go语言以其简洁的语法、强大的并发支持、高效的编译速度和丰富的生态系统,在现代软件开发中占据了重要地位。它特别适合网络编程、微服务架构、分布式系统和命令行工具的开发。Go语言的设计理念和特性使得它成为一种高效、可靠且易于使用的编程语言,深受开发者和企业的欢迎。

            二、安装Go语言主程序

            (一)下载

            地址:https://go.dev/

            该网站将DNS服务器分配手动设为Google的要好用些,其他可能导致无法访问。

            Windows

            正常出现如下页面:

            Windows

            点击图标下面的链接下载最新版本。可以根据需要下载其他版本。

            运行安装程序。安装目录是C:\Program Files\Go。

            (二)添加环境变量

            安装可以自动完成了这一步,在资源管理器中右键单击“我的电脑”,选择“属性”。

            点击“环境变量”按钮。

            Windows

            点击“编辑”按钮。

            Windows

            新建一行,添加Go语言命令文件所在路径。

            查看一下Go语言程序是否安装正确。打开命令行提示符,输入go后回车。

            Windows

            查看go语言版本。

            Windows

            (三)配置环境

            go env -w GO111MODULE=on 
            go env -w GOPROXY=https://goproxy.cn,https://goproxy.io,direct
            

            (四)检查环境变量

            go env
            

            Windows

            三、安装Goland

            使用Goland开发工具搭建Go语言开发环境的步骤如下:

            (一)下载

            下载地址:JetBrains GoLand:不只是 Go IDE。注意GoLnad没有免费版本。

            (二)安装

            执行安装程序。按提示操作即可,选择简体中文语言,将应用程序路径加入环境变量中。

            (三)配置

            在Windows系统中安装并设置好语言为简体中文的JetBrains GoLand IDE(2025.1版本)后,通常需要进行以下一些必要的配置来优化开发体验。可在使用中逐步完成。

            以上步骤完成后,你就可以在Goland中开始高效地进行Go语言的开发工作了。

            四、编写第一个程序

            (一)启动GoLand并创建新项目

            1. 打开GoLand软件。
            2. 选择 “File”(文件)菜单,然后点击 “New Project”(新建项目)或使用快捷键 Ctrl+Shift+A 并搜索 “New Project”。
            3. 在新建项目向导中,选择 “Go” 并点击 “Next” 按钮。
            4. 配置项目设置:
              • 为项目选择一个合适的保存位置。
              • 设置项目名称,例如 “hello-world”。

                Windows

                Windows

            go.mod和main.go文件会被自动创建。

            (二)主包和主函数

            1. go.mod文件。

              module hello-world
              go 1.24
              
            2. main.go 文件。

            package main
            import (
              "fmt"
            )
            func main() {
              s := "gopher"
              fmt.Printf("Hello and welcome, %s!\n", s)
              for i := 1; i 
            	fmt.Println("i =", 100/i)
              }
            }
            
            h3(三)运行程序/h3 olli在 main.go 文件内任意一行代码上点击右键,选择 “运行go build hello-world’” 或按下快捷键 Shift+F10(Windows/Linux)或 ^R(macOS)来运行程序。/lili这时,你应该会在底部的 “Run” 窗口中看到输出结果。/li/ol pre class="brush:python;toolbar:false"Hello and welcome, gopher! i = 100 i = 50 i = 33 i = 25 i = 20 /pre p现在,你已经在GoLand中成功创建并运行了你的第一个Go语言程序!/p p总结起来,如果你主要专注于 Go 开发并寻求一种更加一体化、专业级别的开发体验,GoLand 可能更适合你。而如果你希望一个更为灵活、轻量且可以支持多种语言开发的编辑器,或者预算有限,那么 VSCode 加上相关 Go 扩展将是一个不错的选择。尽管 VSCode 在 Go 支持方面不如 GoLand 那样深入集成,但它通过社区的力量也提供了相当完善的 Go 开发支持。/p h2五、GOLANG常用命令/h2 p直接在终端中输入 go help 即可显示所有的 go 命令以及相应命令功能简介。/p pre class="brush:python;toolbar:false"PS D:\> go help Go is a tool for managing Go source code. Usage: go [arguments] The commands are: bug start a bug report build compile packages and dependencies clean remove object files and cached files doc show documentation for package or symbol env print Go environment information fix update packages to use new APIs fmt gofmt (reformat) package sources generate generate Go files by processing source get add dependencies to current module and install them install compile and install packages and dependencies list list packages or modules mod module maintenance work workspace maintenance run compile and run Go program telemetry manage telemetry data and settings test test packages tool run specified go tool version print Go version vet report likely mistakes in packages Use "go help " for more information about a command. Additional help topics: buildconstraint build constraints buildjson build -json encoding buildmode build modes c calling between Go and C cache build and test caching environment environment variables filetype file types goauth GOAUTH environment variable go.mod the go.mod file gopath GOPATH environment variable goproxy module proxy protocol importpath import path syntax modules modules, module versions, and more module-auth module authentication using go.sum packages package lists and patterns private configuration for downloading non-public code testflag testing flags testfunc testing functions vcs controlling version control with GOVCS Use "go help " for more information about that topic.

            下面做一个对照翻译:

            PS D:\> go help  
            Go is a tool for managing Go source code.  
            Go 是一个用于管理 Go 源代码的工具。  
            Usage:  
            Usage:  
                    go  [arguments]  
                    go  [arguments]  
            The commands are:  
            命令如下:  
                    bug         start a bug report  
                    bug         开始一个错误报告  
                    build       compile packages and dependencies  
                    build       编译包及其依赖项  
                    clean       remove object files and cached files  
                    clean       删除目标文件和缓存文件  
                    doc         show documentation for package or symbol  
                    doc         显示包或符号的文档  
                    env         print Go environment information  
                    env         打印 Go 环境信息  
                    fix         update packages to use new APIs  
                    fix         更新包以使用新的 API  
                    fmt         gofmt (reformat) package sources  
                    fmt         gofmt(重新格式化)包源代码  
                    generate    generate Go files by processing source  
                    generate    通过处理源代码生成 Go 文件  
                    get         add dependencies to current module and install them  
                    get         将依赖项添加到当前模块并安装它们  
                    install     compile and install packages and dependencies  
                    install     编译并安装包及其依赖项  
                    list        list packages or modules  
                    list        列出包或模块  
                    mod         module maintenance  
                    mod         模块维护  
                    work        workspace maintenance  
                    work        工作区维护  
                    run         compile and run Go program  
                    run         编译并运行 Go 程序  
                    telemetry   manage telemetry data and settings  
                    telemetry   管理遥测数据和设置  
                    test        test packages  
                    test        测试包  
                    tool        run specified go tool  
                    tool        运行指定的 go 工具  
                    version     print Go version  
                    version     打印 Go 版本  
                    vet         report likely mistakes in packages  
                    vet         报告包中可能存在的错误  
            Use "go help " for more information about a command.  
            使用 "go help " 获取有关命令的更多信息。  
            Additional help topics:  
            其他帮助主题:  
                    buildconstraint build constraints  
                    buildconstraint 构建约束  
                    buildjson       build -json encoding  
                    buildjson       构建 -json 编码  
                    buildmode       build modes  
                    buildmode       构建模式  
                    c               calling between Go and C  
                    c               Go 和 C 之间的调用  
                    cache           build and test caching  
                    cache           构建和测试缓存  
                    environment     environment variables  
                    environment     环境变量  
                    filetype        file types  
                    filetype        文件类型  
                    goauth          GOAUTH environment variable  
                    goauth          GOAUTH 环境变量  
                    go.mod          the go.mod file  
                    go.mod          go.mod 文件  
                    gopath          GOPATH environment variable  
                    gopath          GOPATH 环境变量  
                    goproxy         module proxy protocol  
                    goproxy         模块代理协议  
                    importpath      import path syntax  
                    importpath      导入路径语法  
                    modules         modules, module versions, and more  
                    modules         模块、模块版本等  
                    module-auth     module authentication using go.sum  
                    module-auth     使用 go.sum 进行模块认证  
                    packages        package lists and patterns  
                    packages        包列表和模式  
                    private         configuration for downloading non-public code  
                    private         下载非公开代码的配置  
                    testflag        testing flags  
                    testflag        测试标志  
                    testfunc        testing functions  
                    testfunc        测试函数  
                    vcs             controlling version control with GOVCS  
                    vcs             使用 GOVCS 控制版本控制  
            Use "go help " for more information about that topic.  
            使用 "go help " 获取有关该主题的更多信息。
            

            六、安装 Lingma 插件

            安装Lingma - Alibaba Cloud AI Coding Assistant插件。

            搜索到这个插件后,根据文字说明,找到Alibaba插件的下载网址,下载一个zip文件。然后使用本地文件安装。

            安装完成后即使用,以此提高编程效率。使用前需要使用阿里云账户登录。

            然后用这个插件将自动编程的代码的注释改成中文:

            package main
            import (
              "fmt"
            )
            //TIP 

            要运行您的代码,请右键点击代码并选择 运行。

            或者, // 点击编辑器边栏中的 图标并从这里选择 运行 菜单项。

            func main() { //TIP

            当光标位于下划线文本时,按下 查看 GoLand 如何建议修复警告。

            或者,如果可用,点击灯泡查看可能的修复方案。

            s := "gopher" fmt.Printf("Hello and welcome, %s!\n", s) for i := 1; i //TIP
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。

目录[+]

取消
微信二维码
微信二维码
支付宝二维码