随笔分类 - Go
go学习记录
摘要:> 经过前两章的基本认识,终于开始并发编程了。 > 2023-7-15:看完这章,大概对书的内容的有一个清晰的认识,基本上涉及底层os的内容都是基于Linux。 # 并发编程基础 ## 基本概念 1. 串行和并行程序:串行程序特指只能被顺序执行的指令列表,并发程序则是可以被并发执行的两个及以上的串行
阅读全文
摘要:> 第二章就是大概讲了一下Go语法的东西,标识符、操作符、类型、流程控制、函数等等。 1. 任何类型都是实现了空接口 2. 空标识符`—`用来接收不需要用到的变量 3. 相比较别的语言,go天生支持高并发,在操作符里面也多了一个跟并发有关的,接收操作:` 当然了,int的类型其实会根据cpu的架构而
阅读全文
摘要:第一章基本上就是讲解Go的历史、如何安装GO、Go的基本概念和一些常用的命令。由于学习Go也有一段时间了,可以看出书中有一些概念其实不完全正确的,特别是gopath部分。 大概知识点如下: 1. 工作区的概念:早期Go确实建议把所有的工程代码放在`GOPATH`环境变量下,这个目录是你自己设置的,可
阅读全文
摘要:> 想起来还不是很熟悉Go的并发编程,趁现在有空学一下。找了一些资料,感觉也不是很好,最终选择看这本书(看到一些大佬推荐的) > 本章作为这个书的目录部分索引,会一直更新到这本书看完,算是立个flag吧。PS:重要提醒,笔者这里并不会把书上的内容面面俱到都写上,只会看完一章之后记录一下自己感觉重要的
阅读全文
摘要:> 最近在刷题的时候,注意到接口的一些特性。 # 空接口的作用 在调用一些库函数的时候,经常会注意到函数参数里面会带有一个空接口,但是实际调用的时候却可以传别的类型进去。后面查的资料,才发现: 1. 接口在go里面的实现是隐式的,也就是说只要是实现了`所有`接口里面定义的方法,那么就可以认为实现了接
阅读全文
摘要:> 2023-7-14:其实就是没有开启ide的mod设置,但是go的环境配置里面又开启了模块,所以才导致一直有错。 > 2023-7-31: 新发现一种错误错误就是,在`gopath`下面创建了go module项目。这两个冲突的!!!!要么单独在在gopath下建,要么在gopath之外的目录下
阅读全文
摘要:方法一: %T 格式化输出%T。详情见这个 例子: import "fmt" func main(){ var a = 1 fmt.Printf( "a: %T " , a ) } 注意用printf,println直接打印了,取不到类型。 方法二: reflect import ( "fmt" "
阅读全文
摘要:环境变量 有三个变量 GOPATH、PATH、GOROOT: GOROOT 就是 go 的安装路径; GOPATH 就是go的项目目录; PATH是go安装路径下的bin目录。 安装可以参考这个教程,讲的很详细清晰。Goland的配置Go也是链接里面一样路径。 适合个人开发的项目结构 我的项目结构:
阅读全文