探索 GO 项目依赖包管理与Go Module常规操作
探索 GO 项目依赖包管理与Go Module常规操作
目录探索 GO 项目依赖包管理与Go Module常规操作一.Go 构建模式的演变1.1 GOPATH (初版)1.1.1 go get1.2 vendor 机制(中版)1.3 Go Module(最新版)二.创建Go Module2.1 创建步骤2.2 简单举列三.深入理解 Go Module 构建模式3.1 Go Module 的语义导入版本机制3.2 Go Module ...
Go 多版本管理工具
Go 多版本管理工具
目录Go 多版本管理工具一、go get 命令1.1 使用方法:二、Goenv三、GVM (Go Version Manager)四、voidint/g4.1 安装4.2 冲突4.3 使用
在平时开发中,本地新旧项目并行开发的过程中,你大概率会遇到一个令人头疼的问题,如何同时使用两个不同版本的 Golang Runtime 进行开发呢?
一、go get 命令
这种方法 ...
Go开始:Go基本元素介绍
本文深入探讨了Go编程语言中的核心概念,包括标识符、关键字、具名函数、具名值、定义类型、类型别名、包和模块管理,以及代码块和断行。这些元素是构成Go程序的基础,也是编写高质量代码的关键。
关注TechLeadCloud,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经 ...
github.com/json-iterator/go 详细教程
最近接触到了 github.com/json-iterator/go , 是由滴滴开源的第三方json编码库,它同时提供Go和Java两个版本。
文中大量内容来自 github 上的 wiki 文档,有兴趣的朋友可以直接点击 Home 跳转到官方文档查阅。
本文加了些自己的思考以及相关的详细学习例子,废话不多说了,冲!!!
1、基础介绍
json-iterator提供简洁的A ...
1.go语言vscode集成开发环境搭建
目录本篇概要集成开发环境工具(ide)Goland或IntelliJ IDEAVisual Studio Code其他集成开发环境Visual Studio Code的go语言开发环境搭建Visual Studio Code安装go编译环境安装配置go环境变量安装go语言插件使用golang编程本篇小结下篇预告
本篇概要
搭建go语言环境,除了要搭建go语言的编译环境,还要搭建go语言的集成开发 ...
WSL2安装以及go开发环境搭建
1 WSL2安装
WSL2 相比WSL1来说,稳定了很多,基本能够应付所有的Linux开发工具,比开虚拟机方便了好多!!
安装步骤
Window10开发环境搭建(1) | 详细演示WSL2的安装
这个UP主还有WSL2下的其他软件配置相关的。跟着视频做就好了。
微软的WSL安装教程
微软的教程写的非常详细,我是直接参照这个教程做的,因为UP主的步骤 ...
【go语言】1.2.1 Go 环境安装
Go 语言的安装过程非常简单,无论你使用的是哪种操作系统,都可以按照下面的步骤来进行。
Windows 系统
前往 Go 语言的官方下载页面:https://golang.org/dl/ ↗
根据你的操作系统版本选择对应的安装包,Windows 系统通常选择 .msi 文件。
下载完成后,双击下载的文件,会出现安装向导,接受协议,点击“Next” ...
go get 和 go install 对比
(一)命令定义和区别
go install 和 go get 都是 Go 语言的工具命令,但它们之间有一些区别。
go get:用于从远程代码存储库(如 GitHub)中下载或更新 Go 代码包。它会下载代码包并将其存储在 $GOPATH/src 目录下对应的位置,并编译代码包中的程序和库。如果目标包之前已经被下载过了,那么 go get 会尝试更新到最新版 ...
Go--发起HTTP请求
一、HTTP请求
根据 HTTP 标准,HTTP 请求可以使用多种请求方法。在日常开发中大多数会用到 5 种请求方法: GET、POST、PUT、PATCH 和 DELETE
方法
描述
GET
请求指定的页面信息,并返回实体主体
POST
向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资 ...
come down、go down和fall down区别
简述
"Come down", "go down"和"fall down" 这三个短语都可以表示描述物体或人的行为从高处向下移动或降落,它们的基本含义是相似的。
另外,这三个词短语的动作都是在垂直方向下的,它们都强调了物体或人的高度变化。它们都可以用于描述飞机、直升机、鸟类、人类等的运动,这些运动都涉及到高度的变化。
区别
虽然 "come d ...
come out 和 go out的区别
简介
通常来说,"come out"和"go out"都是非常常见的短语,它们的相同点在于它们的结构相似,都是由动词和副词组成的短语,而且都和移动有关。
相同点
它们都是由一个常见的动词和一个常见的副词组成的短语。
它们的动词都是关于移动的动作,"come out"是指从某处移动到外面,"go out"是指从某处移动到别处。
...
GO 项目依赖管理:go module总结
转载请注明出处:
1.go module介绍
go module是go官方自带的go依赖管理库,在1.13版本正式推荐使用 go module可以将某个项目(文件夹)下的所有依赖整理成一个 go.mod 文件,里面写入了依赖的版本等 使用go module之后我们可不用将代码放置在src下 使用 go module 管理依赖后会在项目根目录下生成两个文件 go.mod(会记录当 ...
Go Swagger安装及使用
地址:
https://github.com/swaggo/gin-swagger
安装
根据go 版本使用命令
1.70之前
go get -u github.com/swaggo/swag/cmd/swag
1.70之后
go install github.com/swaggo/swag/cmd/swag@latest
查看是否成功
swag -v
swag version v1.8.12
其他安装命令
go get -u github.com/swaggo/gin-swagger
go get -u g ...
探究|Go JSON 三方包哪家强?
本文作者从评判标准、功能评测、性能评测等多方面剖析三方库哪些家强,并给出了比较务实的建议。
引言
为了小伙伴理解,汇总了一下文章中会提及的术语名词解释,请放心品读,欢迎一起讨论交流!
你真的了解 Go 标准库吗?
问题一:标准库可以反序列化普通的字符串吗?执行下面的 ...
go测试库之apitest
前言
使用go语言做开发差不多快一年了,主要用来写后端Web服务,从一开始吐槽他的结构体,比如创建个复杂的JSON格式数据,那是相当的痛苦。还有 err 处理写的巨麻烦。
当然,go 也有爽的地方,创建个线协程简直太简单了。
到后来慢慢接受,觉得效率还行,因为是静态强类型语言,在修改完项目代码之后,反而很有信心(如果出 ...
Go中的有限状态机FSM的详细介绍
1、FSM简介
1.1 有限状态机的定义
有限状态机(Finite State Machine,FSM)是一种数学模型,用于描述系统在不同状态下的行为和转移条件。
状态机有三个组成部分:状态(State)、事件(Event)、动作(Action),事件(转移条件)触发状态的转移和动作的执行。动作的执行不是必须的,可以只转移状态,不指定任何动作。总体 ...
快速搭建一个go语言web后端服务脚手架
快速搭建一个go语言web后端服务脚手架
源码:https://github.com/weloe/go-web-demo
web框架使用gin,数据操作使用gorm,访问控制使用casbin
首先添加一下自定义的middleware
recover_control.go ,统一处理panic error返回的信息
package middleware
import (
"fmt"
"github.com/gin-gonic/gin"
"go-web-demo/componen ...
Golang 一日一库之jwt-go
本文地址 https://www.cnblogs.com/zichliang/p/17303759.html
github地址:https://github.com/dgrijalva/jwt-go
何为 jwt token?
什么是JSON Web Token?
JSON Web Token(JWT)是一个开放标准(RFC 7519),它定义了一种紧凑且自包含的方式,用于在各方之间以JSON方式安全地传输信息。由于此信息是经过数字签名的, ...
golang常用库包:log日志记录-uber的Go日志库zap使用详解
Go 日志记录库:uber-go 的日志操作库 zap 使用
一、简介
zap 是 uber 开源的一个高性能,结构化,分级记录的日志记录包。
go1.20.2
zap v1.24.0
zap的特性
高性能:zap 对日志输出进行了多项优化以提高它的性能
日志分级:有 Debug,Info,Warn,Error,DPanic,Panic,Fatal 等
日志记录结构化:日志内容记录是结 ...
【go】uuid简介
通用唯一识别码(英语:universally unique identifier,简称uuid)是一种软件建构的标准,亦为自由软件基金会组织在分散式计算环境领域的一部份。uuid的目的,是让分散式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的uuid。在这样的情 ...