【Go语言学习】安装与配置

news2024/12/28 20:50:09

文章目录

  • 前言
  • 一、Go语言学习站
  • 二、安装与配置
    • 1.安装
    • 2.环境变量配置
    • 3.Gland编辑器安装与配置
    • Hello, World!
  • 总结


前言

Go语言特性

Go,又称为 Golang,是一门开源的编程语言,由 Google 开发。Go 语言的设计目标是提供一种简单、快速、高效、安全的编程语言,同时具有静态类型、垃圾回收、并发编程等特性。


  • 简单易学:Go 语言的语法简单清晰,易于理解和学习。

  • 并发编程:Go 语言提供了原生的并发编程支持,使得编写高并发程序变得更加容易。

  • 高效性能:Go 语言具有高效的内存管理和垃圾回收机制,可以在不牺牲性能的情况下实现高效的编程。

  • 跨平台支持:Go 语言可以在各种操作系统上运行,如 Windows、Linux、MacOS 等。

  • 多样性的应用场景:Go 语言可以用于 Web 开发、网络编程、系统编程、数据库操作、人工智能等领域。

  • 社区活跃:Go 语言的社区非常活跃,有很多开源项目和工具,能够为开发者提供很多便利。

以下是本篇文章正文内容,下面案例可供参考

一、Go语言学习站

  1. Go 官方网站:https://golang.org/ - 这是 Go 语言的官方网站,提供了完整的文档、教程和代码示例。

  2. Go by Example:https://gobyexample.com/ - 这是一个通过实际代码示例来学习 Go 语言的网站。

  3. A Tour of Go:https://tour.golang.org/welcome/1 - 这是一个交互式的 Go 语言学习教程,通过在线编写代码来帮助初学者学习 Go 语言。

  4. Learn Go with Tests:https://quii.gitbook.io/learn-go-with-tests/ - 这是一个通过测试驱动开发的方式来学习 Go 语言的教程。

  5. 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 main

import "fmt"

func main() {
	fmt.Println("Hello, World!")
}

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

以上就是今天要讲的内容,本文仅仅简单介绍了GO的安装与简单的使用,后面将对go语言做一个深度的学习,学习GO语言的主要目的是为了后面安全开发,GO的语言现在非常火,这是我学习这个的主要目的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/389762.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在MySQL中使用不等于符号还能走索引吗?

一般情况下,我们会在一个索引上较多的使用等值查询或者范围查询,此时索引大多可以帮助我们极快的查询出我们需要的数据。 那当我们在where条件中对索引列使用!查询,索引还能发挥他的作用吗? 以此SQL为例: select * …

农产品销售系统的设计与实现

技术:Java、JSP等摘要:这篇文章主要描述的是农产品蔬菜在线销售系统的设计与实现。主要应用关于JSP网站开发技术,并联系到网站所处理的数据的结构特点和所学到的知识,应用的主要是Mysql数据库系统。系统实现了网站的基本功能&…

计算机组成原理|第一章(笔记)

目录第一章 计算机系统概论1.1 计算机系统简介1.1.1 计算机的软硬件概念1.1.2 计算机系统的层次结构1.1.3 计算机组成和计算机体系结构1.2 计算机的基本组成1.2.1 冯 诺伊曼计算机的特点1.2.2 计算机的硬件框图1.2.3 计算机的工作过程1.3 计算机硬件的主要技术指标1.3.1 机器字…

kaggle数据集下载当中所遇到的问题

kaggle数据集下载当中所遇到的问题报错分析pip install kagglethe SSL module is not available解决方法pip的版本升级解决办法下载kaggle包kaggle数据集下载问题解决参考内容报错分析 今天在尝试使用pip install kaggle的方法去下载我需要的数据集的时候遇到了一些报错的问题…

二分查找与判定树

二分查找的算法思想二分查找也称“折半查找”,要求查找表为采用顺序存储结构的有序表。本例一律采用升序排列。二分查找每一次都会比较给定值与序列[low,high]的中间元素,该元素的下标为mid (lowhigh)/2,若两者相等,则返回元素的下标为mid;如…

Django的DRF从入门到精通

第一讲:建立纯净版Django项目 ① 创建Django项目 ② 创建app一个 python manage.py startapp APP名字 ③ 在settings里配置rest_framework,把不需要的全部注释掉 INSTALLED_APPS = [# django.contrib.admin,# django.contrib.auth,# django.contrib.contenttypes,# djang

centos7 安装 MySQL5.7

1.下载MySQL官方的 Yum Repository wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm2.安装 Yum Repository yum -y install mysql57-community-release-el7-10.noarch.rpm3 使用 yum 安装 MySQL yum -y install mysql-community-server若…

推荐系统1--Deepfm学习笔记

目录 1 keras实现Deepfm demo 2 deepctr模版 3 其他实现方式 ctr_Kera 模型 数据集 预处理 执行步骤 4何为focal loss 参考 1 keras实现Deepfm 假设我们有两种 field 的特征,连续型和离散型,连续型 field 一般不做处理沿用原值,离散型一…

Promise学习基础学习 promise封装fs模块、AJAX请求

Promise 是什么? 抽象表达: 1、Promise 是一门新的技术(ES6规范) 2、Promise 是JS中进行异步编程的新解决方案 备注:旧方案是单纯使用回调函数 具体表达: 1、从语法上来说:Promise 是一个构造…

QML Loader(加载程序)

Loader加载器用于动态加载 QML 组件。加载程序可以加载 QML 文件(使用 source 属性)或组件对象(使用 sourceComponent 属性) 常用属性: active 活动asynchronous异步,默认为falseitem项目progress 进度so…

package.json中 版本号详解

1. 版本号简介 软件版本号有四部分组成: 第一部分:主版本号,当进行不兼容的 API 更改时,则升级主版本;第二部分:次版本号,当以向后兼容的方式添加功能时,则升级次版本;…

FPGA实现SDI视频编解码 SDI接收发送,提供2套工程源码和技术支持

目录1、前言2、设计思路和框架SDI接收SDI缓存写方式处理SDI缓存读方式处理SDI缓存的目的SDI发送3、工程1详解4、工程2详解5、上板调试验证并演示6、福利:工程代码的获取1、前言 FPGA实现SDI视频编解码目前有两种方案: 一是使用专用编解码芯片&#xff0…

【玩转c++】vector讲解和模拟底层实现

本期主题:vector的讲解和模拟实现博客主页:小峰同学分享小编的在Linux中学习到的知识和遇到的问题小编的能力有限,出现错误希望大家不吝赐vector的介绍及使用1.1vector的介绍vector其实就是一个数组的模板 ,存放的数据可以改变而已…

不想长大,却又期待成长

长大后的世界、 会让我觉得很陌生、很陌生、 为什么我们都要长大、 为什么要学会独立?甚至还恨害怕长大。. 因为没有依靠、没有安全感、 虽然我知道、总有一天我要步入这个大人的世界、 可是不想、害怕、害怕自己会受伤、 世界的变化、太快了、太快了、 成人的世…

PMP项目管理项目运行环境

目录1 概述2 事业环境因素和组织过程资产3 组织系统3.1 概述3.2 组织治理框架3.2.1 治理框架3.2.2 项目治理3.3 管理要素3.4 组织结构类型3.4.1 组织结构类型3.4.2 项目管理办公室1 概述 项目所处的环境可能对项目的开展产生有利或不利的影响,这些影响的两大主要来…

数据结构——链表讲解(2)

作者:几冬雪来 时间:2023年3月5日 内容:数据结构链表讲解 目录 前言: 剩余的链表应用: 1.查找: 2.改写数据: 3.在pos之前插入数据: 4.pos位置删除: 5.在pos的后…

零死角玩转stm32初级篇1-STM32如何编译和下载程序

本篇博文目录:一.程序的编译二.程序的下载1.ISP方式2.JTAG方式3.SWD方式4.SWIM方式一.程序的编译 Keil uVision5 工具中有四个编译如图&#xff0c;他们分别表示什么意思,下面进行介绍,解释来源于<<零死角玩转stm32>>。 第一个按钮&#xff1a; Translate 就是翻译…

【项目实战】Linux下安装Nginx教程

一、环境准备 Linux版本&#xff1a;CentOS7 64位 二、具体步骤 2.1 步骤1&#xff1a;确认系统中安装以下基础依赖 确认系统中安装了gcc、pcre-devel、zlib-devel、openssl-devel。 在安装Nginx前首先要确认系统中安装了gcc、pcre-devel、zlib-devel、openssl-devel。 yu…

Feature interation—— Bridge、Fusion、Filte

Feature interation&#xff08;特征交互&#xff09;&#xff1a;物品不同模态的表示属于不同的语义空间&#xff0c;并且每个用户对模态也有不同的偏好。因此&#xff0c;多模态推荐系统&#xff08;MRS&#xff09;寻求融合和交互多模态特征来生成用户和物品的特征表示。特征…

STM32开发(六)STM32F103 通信 —— RS485 Modbus通信编程详解

文章目录一、基础知识点二、开发环境三、STM32CubeMX相关配置1、STM32CubeMX基本配置2、STM32CubeMX RS485 相关配置四、Vscode代码讲解五、结果演示以及报文解析一、基础知识点 了解 RS485 Modbus协议技术 。本实验是基于STM32F103开发 实现 通过RS-485实现modbus协议。 准备…