【Go语言学习】安装与配置
文章目录
- 前言
- 一、Go语言学习站
- 二、安装与配置
- 1.安装
- 2.环境变量配置
- 3.Gland编辑器安装与配置
- Hello, World!
- 总结
前言
Go语言特性
Go,又称为 Golang,是一门开源的编程语言,由 Google 开发。Go 语言的设计目标是提供一种简单、快速、高效、安全的编程语言,同时具有静态类型、垃圾回收、并发编程等特性。
-
简单易学:Go 语言的语法简单清晰,易于理解和学习。
-
并发编程:Go 语言提供了原生的并发编程支持,使得编写高并发程序变得更加容易。
-
高效性能:Go 语言具有高效的内存管理和垃圾回收机制,可以在不牺牲性能的情况下实现高效的编程。
-
跨平台支持:Go 语言可以在各种操作系统上运行,如 Windows、Linux、MacOS 等。
-
多样性的应用场景:Go 语言可以用于 Web 开发、网络编程、系统编程、数据库操作、人工智能等领域。
-
社区活跃:Go 语言的社区非常活跃,有很多开源项目和工具,能够为开发者提供很多便利。
以下是本篇文章正文内容,下面案例可供参考
一、Go语言学习站
-
Go 官方网站:https://golang.org/ - 这是 Go 语言的官方网站,提供了完整的文档、教程和代码示例。
-
Go by Example:https://gobyexample.com/ - 这是一个通过实际代码示例来学习 Go 语言的网站。
-
A Tour of Go:https://tour.golang.org/welcome/1 - 这是一个交互式的 Go 语言学习教程,通过在线编写代码来帮助初学者学习 Go 语言。
-
Learn Go with Tests:https://quii.gitbook.io/learn-go-with-tests/ - 这是一个通过测试驱动开发的方式来学习 Go 语言的教程。
-
Go 学习笔记:https://www.topgoer.com/ - 这是一个提供了很多 Go 语言学习资源的网站,包括教程、博客文章、视频教程等。
二、安装与配置
1.安装
官网下载:https://go.dev/dl/


这里我们尽量不要选c盘安装:


安装完成

2.环境变量配置
和其他语言一样go也需要配置环境:
创建一个文件夹用于go语言项目存放:





这里是指向我们的安装目录:

新建系统变量:GOROOT指向go安装位置

新建GOPATH指向新建的文件夹:

windows+r 弹出cmd窗口指向go env查看配置是否成功

在goproject中创建三个文件夹:
在GOPATH目录下新建三个文件夹
bin:用来存放编译后生成的可执行文件
pkg:用来存放编译后生成的归档文件
src: 用来存放源码文件

目前流行的项目结构:

企业开发者框架:

3.Gland编辑器安装与配置
编辑器:goland和Visual Studio Code这两款编辑器都非常不错此教程以goland进行安装
goland官网:https://www.jetbrains.com/go/
注意:goland是收费的

如果学生党买不了正版推荐:https://3.jetbra.in/(懂得都懂)建议大家使用正版软件
下载完成后安装:



新建项目打开设置


编辑GOROOT:

编辑GOPATH:

创建文件夹和goproject文件夹相同:创建main.go文件

设置中文:(我这已经改了)



安装完重启完成
Hello, World!
新建main.go文件:
package mainimport "fmt"func main() {fmt.Println("Hello, World!")
}




总结
以上就是今天要讲的内容,本文仅仅简单介绍了GO的安装与简单的使用,后面将对go语言做一个深度的学习,学习GO语言的主要目的是为了后面安全开发,GO的语言现在非常火,这是我学习这个的主要目的。
相关文章:
【Go语言学习】安装与配置
文章目录前言一、Go语言学习站二、安装与配置1.安装2.环境变量配置3.Gland编辑器安装与配置Hello, World!总结前言 Go语言特性 Go,又称为 Golang,是一门开源的编程语言,由 Google 开发。Go 语言的设计目标是提供一种简单、快速、高效、安全…...
HCIP-5OSPF区域类型学习笔记
1、OSPF区域类型 OSPF提出了区域的概念(AREA),区域是将所有运行OSPF 的路由器人为的分成不同的组,以区域ID来标示。在区域内路由计算的方法不变,由于划分区域之后,每个区域内的路由器不会很多,…...
C语言再学习第三章
例题3-1 编写一个函数,实现华氏度和摄氏度的转化。 已知公式:c (5/9)*(f-32) #include <stdio.h>double f_value 0; double c_value 0; int main(void) {printf("请输入华氏温度\n");scanf("%lf",&f_valu…...
【aiy篇】小目标检测综述
小目标检测(Small Object Detection)是指在图像中检测尺寸较小的目标物体,通常是指物体的尺寸小于图像大小的1/10或者更小,COCO为例,面积小于等于1024像素的对象维下目标。小目标检测是计算机视觉领域的一个重要研究方…...
常用Linux命令的基本使用
序号 命令 对应英文 作用 1 ls list 查看当前文件夹下的内容 2 pwd print work directory 查看当前所在文件夹 3 cd[目录名] changge directory 切换文件夹 4 touch[文件名] touch 如果文件不存在,新建文件 5 mkdir[目录名] make directory …...
对跳表的深入理解
一,如何理解跳表 简单说跳表(Skip list)就是链表的“二分查找”。redis 的有序集合用的就是跳表算法。跳表是一种各方面性能都比较优秀的动态数据结构,可以支持快速地插入、删除、查找操作,写起来也不复杂,…...
C++017-C++冒泡排序与插入排序
文章目录C017-C冒泡排序与插入排序冒泡排序与插入排序目标冒泡排序排序规则冒泡排序优化插入排序题目描述在线练习:总结C017-C冒泡排序与插入排序 在线练习: http://noi.openjudge.cn/ https://www.luogu.com.cn/ 冒泡排序与插入排序 参考:…...
数据结构基础之链表
目录 前言 1、什么是链表 2、添加元素 3、虚拟头结点 4、查询&修改元素 5、删除元素 附:完整代码 前言 又到周末了,修整了一天,继续来写点东西吧,今天,我们来学习数据结构中的另一种基础的数据结构——链表…...
css 的渲染层合成是什么,浏览器如何创建新的渲染层
在 DOM 树中每个节点都会对应一个渲染对象(RenderObject),当它们的渲染对象处于相同的坐标空间(z 轴空间)时,就会形成一个 RenderLayers,也就是渲染层。渲染层将保证页面元素以正确的顺序堆叠&a…...
nacos-sdk-rust binding to NodeJs
广告时间 nacos-sdk-rust-binding-node : nacos-sdk-rust binding to NodeJs with napi. Tip: nacos-sdk-nodejs 仓库暂未提供 2.x gRPC 交互模式,为了能升级它,故而通过 node addon 方式调用 nacos-sdk-rust npm 包 -> https://www.npmjs.com/packa…...
MySQL下载安装以及环境配置教程
目录MySQL 下载MySQL 安装配置环境变量MySQL 下载 进入官方网站 https://www.mysql.com/ 点击 DOWNLOADS 进入下载页面 免费版本点击下方的 MySQL Community (GPL) Downloads 点击 MySQL Community Server 点击 Go to Download Page 进入下载页面 点击 Download 点击 No thank…...
概率论 1.3 古典概型与几何概型
1.3.1 排列与组合排列从n个不同元素任取r(r<n)个元素排成一列(考虑元素出现的先后次序),称此为一个排列,此种排列的总数为n(n-1)....(n-r1)n!/(n-r)!,若rn,则称为全排列,2.重复排列从n个不同元素中每次取出一个,放回…...
HTML DOM
通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素。HTML DOM (文档对象模型)当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。HTML DOM 定义了用于 HTML 的一系列标准的对象,以及访问和处…...
Vue组件-$refs、$nextTick和name属性的使用
Vue组件-$refs和$nextTick使用一、获取DOM二、$refs获取组件对象三、$nextTick异步更新DOM四、组件name属性的使用一、获取DOM 通过id或ref属性获取原生DOM 在mounted生命周期 – 2种方式获取原生DOM标签 目标标签 – 添加id / ref恰当时机, 通过id / 通过ref属性 获取目标标签…...
【Spark】Spark的DataFrame向Impala写入数据异常及源码解析
背景 事情是这样的,当前业务有一个场景: 从业务库的Mysql抽取数据到Hive 由于运行环境的网络限制,当前选择的方案: 使用spark抽取业务库的数据表,然后利用impala jdbc数据灌输到hive。(没有spark on hive 的条件&…...
学习笔记-架构的演进之限流-3月day03
文章目录前言限流的目标流量统计指标限流设计模式流量计数器模式滑动时间窗模式漏桶模式令牌桶模式分布式限流总结附前言 任何一个系统的运算、存储、网络资源都不是无限的,当系统资源不足以支撑外部超过预期的突发流量时,就应该要有取舍,建…...
动态规划 背包问题
动态规划 背包问题 问题描述: 有一个背包,总容量为12。有6件物品,每件物品的重量和价值不同,求在背包总容量12的前提下,装进物品的最大价值以及装进物品的编号 单个物品重量和价值: 为方便进行思考&#…...
C++ Primer Plus 学习笔记(四)—— 内存模型和名称空间
1 单独编译 C允许将组件函数放在独立的文件即头文件中,头文件中可以包含以下内容: 函数原型;使用#define或const定义的符号常量;结构声明;类声明;模板声明;内联函数。 注意,在包含…...
详解基于 Celestia、Eclipse 构建的首个Layer3 链 Nautilus Chain
以流支付为主要概念的Zebec生态,正在推动流支付这种新兴的支付方式向更远的方向发展,该生态最初以Zebec Protocol的形态发展,并从初期的Solana进一步拓展至BNB Chian以及Near上。与此同时,Zebec生态也在积极的寻求从协议形态向公链…...
列表与数组的转化
目录用np.array(a)将列表转换为数组列表转数组的特殊情况(一)列表转数组的特殊情况(二)针对子元素个数不一致的解决办法用a.tolist()函数将数组转化为列表在python的学习中,经常会用到数组与列表的相互转化,本文主要介绍下关于数组与列表转化的问题。用n…...
Qwen3.5-9B商业落地实践:电商客服图文理解+多轮需求确认系统
Qwen3.5-9B商业落地实践:电商客服图文理解多轮需求确认系统 1. 项目概述与核心价值 Qwen3.5-9B是一款拥有90亿参数的开源大语言模型,在电商客服场景中展现出强大的商业应用价值。该系统通过多模态理解和长上下文支持能力,能够同时处理文字和…...
SecGPT-14B完整指南:从镜像拉取、服务启动、参数调优到故障排查
SecGPT-14B完整指南:从镜像拉取、服务启动、参数调优到故障排查 1. SecGPT-14B简介 SecGPT-14B是一款专注于网络安全领域的文本生成模型,基于Qwen2ForCausalLM架构开发,拥有140亿参数规模。该模型专为安全专业人员设计,能够提供…...
ChatGPT:解锁高级生产力工具的全方位指南
ChatGPT:功能强大的多面手ChatGPT 本质上是一个强大的搜索引擎,同时具备多种实用功能。它能回答问题、总结文本、撰写新内容、编写代码以及进行语言翻译等。不同版本的 ChatGPT,有的可浏览互联网,有的能提供截至最后训练模型日期的…...
别再到处找接口了!手把手教你用阿里云盘+Alist搭建自己的TVBox影视仓(附JSON配置模板)
私有影视仓搭建实战:用阿里云盘Alist打造专属TVBox资源库 每次打开TVBox却发现公共接口失效?第三方资源突然无法访问?与其在各大论坛反复搜索不稳定接口,不如用两小时搭建一个完全私有的影视管理系统。本文将彻底改变你获取影音资…...
Phi-4-mini-reasoning vLLM参数详解:context_length=131072配置与性能调优
Phi-4-mini-reasoning vLLM参数详解:context_length131072配置与性能调优 1. 模型概述 Phi-4-mini-reasoning 是一个基于合成数据构建的轻量级开源模型,专注于高质量、密集推理的数据处理能力。作为Phi-4模型家族的一员,它特别针对数学推理…...
LeetCode每日练习题---49.字母异位词分组
49.字母异位词分组 条件 已知: 字符串数组 目标: 将字母异位词组合在一起 思想(时间复杂度太高超时了) 我的想法是,双重遍历的暴力方法 , 先对字符串数组中的元素进行遍历 ,第一层遍历ÿ…...
2025最权威的AI论文助手推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 在当下诸多处于主流地位的AI论文工具当中,Grammarly于语法校对以及学术表达优化…...
机器人学前沿技术探索:robotics-coursework项目高级应用指南
机器人学前沿技术探索:robotics-coursework项目高级应用指南 【免费下载链接】robotics-coursework 🤖 Places where you can learn robotics (and stuff like that) online 🤖 项目地址: https://gitcode.com/gh_mirrors/ro/robotics-cour…...
OpenSpeedy游戏变速工具实战指南:打破帧率限制的完整攻略
OpenSpeedy游戏变速工具实战指南:打破帧率限制的完整攻略 【免费下载链接】OpenSpeedy 🎮 An open-source game speed modifier. 项目地址: https://gitcode.com/gh_mirrors/op/OpenSpeedy OpenSpeedy是一款开源免费的游戏变速工具,能…...
用PLECS和C代码手把手教你实现数字滤波(附完整工程文件)
用PLECS和C代码实现数字滤波的工程实践指南 在电力电子和电机控制领域,数字滤波技术是实现信号处理的关键环节。无论是消除高频噪声还是提取特定频段的信号成分,一个设计良好的数字滤波器都能显著提升系统性能。本文将带您从理论到实践,通过P…...
