随笔分类 -  go

摘要:下载地址 安装包下载地址(随便选一个能访问的下载,区别在于命令行中使用gvm,还是g) win 平台 1.gitee上的gvm:gvm 发行版 - Gitee.com 2.github上的g:Releases · voidint/g · GitHub 上面这个是同一个作者 mac 平台 https: 阅读全文
posted @ 2023-04-10 11:47 makalo 阅读(712) 评论(0) 推荐(0)
摘要:官网: https://etcd.io/docs/v3.5/quickstart/ https://github.com/etcd-io/etcd etcd 是什么 etcd是一种key-value存储, 它侧重于保证集群环境中数据的一致性 redis也是键值对存储, 它侧重于提供高速读写. 当需要 阅读全文
posted @ 2023-02-22 14:49 makalo 阅读(205) 评论(0) 推荐(0)
摘要:简介 中文官网:https://gin-gonic.com/zh-cn/docs/introduction/ github:https://github.com/gin-gonic/gin Gin 是一个用 Go (Golang) 编写的 Web 框架。 它具有类似 martini 的 API,性能 阅读全文
posted @ 2023-02-08 17:47 makalo 阅读(1334) 评论(0) 推荐(1)
摘要:简介 官方文档:https://gorm.io/zh_CN/docs/index.html github :https://github.com/go-gorm/gorm 同其他语言的ORM框架一样,这是Go 版本的 本文全部以mysql为例 sql 脚本 为了方便测试,这里准备一份sql 脚本,来 阅读全文
posted @ 2023-02-08 11:22 makalo 阅读(516) 评论(0) 推荐(0)
摘要:转自:https://zhuanlan.zhihu.com/p/258978922 抛砖引玉:什么是 Tag? 正常情况下,你定义的结构体是这样子的,每个字段都由名字和字段类型组成 type Person struct { Name string Age int Addr string } 也有例外 阅读全文
posted @ 2023-02-07 17:50 makalo 阅读(216) 评论(0) 推荐(0)
摘要:## 什么是grpc 详细文档: https://doc.oschina.net/grpc?t=58008 - gRpc 是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2 设计。目前提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 阅读全文
posted @ 2023-02-07 11:13 makalo 阅读(250) 评论(0) 推荐(0)
摘要:泛型的作用 有关 go 泛型的提案和具体使用: https://github.com/polaris1119/go_dynamic_docs/blob/master/go2draft-contracts.md 泛型生命周期只在编译期,旨在为程序员生成代码,减少重复代码的编写 类型在编译之前就会限制, 阅读全文
posted @ 2023-02-06 11:19 makalo 阅读(115) 评论(0) 推荐(0)
摘要:转载于:https://blog.csdn.net/nihaihaoma/article/details/125601630 2022年3月15日,争议非常大但同时也备受期待的泛型终于伴随着Go1.18发布了。 可是因为Go对泛型的支持时间跨度太大,有非常多的以“泛型”为关键字的文章都是在介绍Go1 阅读全文
posted @ 2023-02-06 11:18 makalo 阅读(78) 评论(0) 推荐(0)
摘要:简介 常见的文件操作:读、写、追加、复制,在go语言中标准库os提供了Openfile函数来进行此类操作,其原型如下: func OpenFile(name string, flag int, perm FileMode) (file *File, err error) name 是文件的文件名,如 阅读全文
posted @ 2023-02-05 18:19 makalo 阅读(254) 评论(0) 推荐(0)
摘要:原子操作简介 原子操作即是进行过程中不能被中断的操作,针对某个值的原子操作在被进行的过程中,CPU绝不会再去进行其他的针对该值的操作。为了实现这样的严谨性,原子操作仅会由一个独立的CPU指令代表和完成。原子操作是无锁的,常常直接通过CPU指令直接实现。 事实上,其它同步技术的实现常常依赖于原子操作。 阅读全文
posted @ 2023-02-04 21:33 makalo 阅读(188) 评论(0) 推荐(0)
摘要:简介 在Java中提供Sychronized关键字提供独占锁,Lock类提供读写锁。在sync包中实现的功能也是与锁相关,包中主要包含的有: sync.Map:并发安全 map sync.Mutex:锁 sync.RWMutex:读写锁 sync.Once:只执行一次 sync.WaitGroup: 阅读全文
posted @ 2023-02-04 19:04 makalo 阅读(110) 评论(0) 推荐(0)
摘要:简介 Go 语言支持并发,我们只需要通过 go 关键字来开启 goroutine 即可。 goroutine 是轻量级线程也有叫 用户级线程,协程的, goroutine 的调度是由 Golang 运行时进行管理的。 你可理解为一段可以异步执行的代码,一个新的轻量级线程 进程 => 线程 =>协程 阅读全文
posted @ 2023-02-04 16:40 makalo 阅读(77) 评论(0) 推荐(0)
摘要:任何语言都不可避免要进行模块化,这里就简单介绍下 同package 同文件夹下 不同文件之间调用 案例 该方式必须所有文件都为main,也就是包名相同,才可以运行 test.go package main func sayHello() { println("Hello makalo") } mai 阅读全文
posted @ 2023-02-03 19:37 makalo 阅读(244) 评论(0) 推荐(0)
摘要:转自 : https://blog.csdn.net/Sihang_Xie/article/details/124851399 1 .0 背景 Go 依赖管理的演进经历了以下 3 个阶段: 目前被广泛应用的是 Go Module,整个演进路线主要围绕实现两个目标来迭代发展: 不同环境 (项目) 依赖 阅读全文
posted @ 2023-02-03 19:35 makalo 阅读(589) 评论(0) 推荐(0)
摘要:http库 实现一个最简单的 http server需要几行代码? 对于python可能只需一行,对于 node 可能也要不了几行,那对于 golang 要几行?同样也要不了几行,这几乎是所有现代化高级语言的特性,提供了官方内置库,大大简化了开发工作量 http库就是做这个的,下面看瞎官方解释 ht 阅读全文
posted @ 2023-02-03 10:22 makalo 阅读(153) 评论(0) 推荐(0)
摘要:概述 Go语言追求简洁优雅,所以,Go语言不支持传统的 try…catch…finally 这种异常,因为Go语言的设计者们认为,将异常与控制结构混在一起会很容易使得代码变得混乱。因为开发者很容易滥用异常,甚至一个小小的错误都抛出一个异常。在Go语言中,使用多值返回来返回错误。不要用异常代替错误,更 阅读全文
posted @ 2023-02-03 10:08 makalo 阅读(97) 评论(0) 推荐(0)
摘要:main 函数 package main // 声明 main 包,表明当前是一个可执行程序 // func 为方法关键字 func main() { // main函数,是程序执行的入口 println("Hello World!") // 在终端打印 Hello World! } main 函数 阅读全文
posted @ 2023-01-29 17:56 makalo 阅读(245) 评论(0) 推荐(0)
摘要:SDK下载 下载地址: https://golang.google.cn/dl/ https://studygolang.com/dl 这两个那个下载快 用那个 都是镜像 ,官网被墙了(你懂得)官网地址 https://golang.org/dl/ 然后下载对应平台的安装包,例如我这里就是 win平 阅读全文
posted @ 2023-01-28 17:48 makalo 阅读(1442) 评论(1) 推荐(1)