![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Go语言学习笔记(入门)
文章平均质量分 91
一本入门书籍——(《Go语言入门经典》 [英]乔治·奥尔波著 张海燕译)学习记录
是兔不是秃
这个作者很懒,什么都没留下…
展开
-
Go语言学习笔记(总结)
Go语言学习笔记(总结)一、往期链接二、总结一、往期链接章节主要内容Go语言学习笔记(一)简介Go语言学习笔记(二)类型Go语言学习笔记(三)变量Go语言学习笔记(四)函数Go语言学习笔记(五)流程Go语言学习笔记(六)数组、切片和映射Go语言学习笔记(七)结构体和指针Go语言学习笔记(八)方法和接口Go语言学习笔记(九)字符串Go语言学习笔记(十)处理错误Go语言学习笔记(十一)Goroutine原创 2021-04-15 10:58:48 · 530 阅读 · 0 评论 -
Go语言学习笔记(二十四)
我们要将Go源程序发布为可执行的软件,我们首先要考虑的就是软件将会在那些平台运行,不同的操作系统和体系结构与软件能否正常运行密切相关。原创 2021-04-15 10:21:58 · 122 阅读 · 0 评论 -
Go语言学习笔记(二十三)
Go语言中time包的一些简单操作原创 2021-04-14 20:52:20 · 157 阅读 · 0 评论 -
Go语言学习笔记(二十二)
使用Go语言操作正则表达式原创 2021-04-14 09:42:02 · 183 阅读 · 0 评论 -
Go语言学习笔记(二十一)
本章介绍如何使用Go语言来处理文件。原创 2021-04-13 20:01:09 · 155 阅读 · 0 评论 -
Go语言学习笔记(二十)
本篇介绍如何在Go语言中处理JSON。这里将介绍如何对JSON进行编码和解码,还有JavaScript和Go数据类型之间的而一些不同。我们将明白如何使用结构体标签(struct tags)细致地控制JSON,还有如何使用HTTP从远程API取回JSON。原创 2021-04-13 10:18:09 · 132 阅读 · 0 评论 -
Go语言学习笔记(十九)
超文本传输协议(Hypertext Transfer Protocol, HTTP)是一种在互联网上收发资源的网络协议,用于传输图像、HTML文档和JSON等。本章介绍如何使用Go语言创建HTTP客户端,你将学习如何发出各种类型的请求,还有如何在开发期间调试程序。原创 2021-04-12 23:12:48 · 186 阅读 · 0 评论 -
Go语言学习笔记(十八)
本篇是有关于如何使用Go语言创建HTTP服务器的笔记原创 2021-04-12 13:08:55 · 287 阅读 · 0 评论 -
Go语言学习笔记(十七)
命令行程序也叫命令行使用程序或工具,它被设计在终端运行。本章介绍如何使用Go语言创建命令行程序,您将了解如何分析参数以及如何创建子命令原创 2021-04-11 12:31:35 · 309 阅读 · 0 评论 -
Go语言学习笔记(十六)
这篇笔记关于调试部分内容原创 2021-04-10 19:51:39 · 131 阅读 · 0 评论 -
Go语言学习笔记(十五)
本篇记载了测试和性能的笔记原创 2021-04-10 14:22:12 · 223 阅读 · 0 评论 -
Go语言学习笔记(十四)
本篇主要记录Go语言命名的一些规则以及go的相关代码格式设置原创 2021-04-10 10:38:33 · 278 阅读 · 0 评论 -
Go语言学习笔记(十三)
Go语言学习笔记(十三)一、使用包实现代码重用1 导入包2 理解包的用途3 使用第三方包4 安装第三方包一、使用包实现代码重用在Go语言中,包用于代码编组,以便在Go程序中导入并使用他们。1 导入包package mainimport ( "fmt")func main(){ fmt.Println("Hello World!")}Go程序以package语句开头。main包是一种特殊的包,其特殊之处在于不能导入。对main包的唯一要求是,必须声明一个main函数,这个函数原创 2021-04-08 13:27:52 · 299 阅读 · 0 评论 -
Go语言学习笔记(十二)
Go语言学习笔记(十二)一、通道简介1 使用通道一、通道简介通道帮助管理Goroutine之间的通信。通道和Goroutine一道提供了一个受控的环境,能够帮助我们开发并发软件1 使用通道如果说Goroutine是一种支持并发编程的方式,那么通道就是一种与Goroutine通信的方式。通道让数据能够进入和离开Goroutine,可方便Goroutine之间进行通信《Effective Go》有一句话很好的说明了Go语言的并发实现理念:不要通过共享内存来实现通信,而通过通信来共享内存...原创 2021-04-08 00:05:07 · 186 阅读 · 0 评论 -
Go语言学习笔记(十一)
Go语言学习笔记(十一)一、使用Goroutine1 并发和并行2 阻塞和非阻塞代码3 使用Goroutine处理并发操作4 相关问题Goroutine为何要立即返回?可在哪些情况下使用Goroutine?这部分开始就有点东西了一、使用Goroutine1 并发和并行并发和并行的区别:我自己的理解是并行:指的是将串行的任务分成n段串行的小任务段,交由不同的部门执行并发:指的是n多部门分别处理相似结构的任务,如web服务器的访问2 阻塞和非阻塞代码模拟函数调用阻塞程序的执行直到操作完成的情形原创 2021-04-07 16:35:55 · 186 阅读 · 0 评论 -
Go语言学习笔记(十)
Go语言学习笔记(十)一、处理错误1 错误处理及Go语言的独特之处2 理解错误类型3 创建错误4 设置错误的格式5 从函数返回错误6 错误和可用性7 慎用panic8 相关问题8.1 在Go代码中,if err != nil随处可见。这看起来重复太多,请问这种做法是最佳的吗?8.2 Go支持异常吗?一、处理错误错误处理及Go语言的独特之处理解错误类型创建错误设置错误的格式从函数返回错误错误和可用性慎用panic无论在什么语言中,错误处理都是相当重要的一部分内容,有些语言在捕获到错误原创 2021-04-07 15:45:34 · 121 阅读 · 0 评论 -
Go语言学习笔记(九)
Go语言学习笔记(九)一、使用字符串1 创建字符串字面量2 rune字面量3 拼接字符串3.1使用缓冲区拼接字符3.3 处理字符串3.3.1 将字符串转换为小写3.3.2 查找子串3.3.3 删除字符串中的空格4 相关问题一、使用字符串Go语言支持两种创建字符串字面量的方法解释型字符串字面量是用双引号括起的字符,在这里面还包括了rune字面量,rune字面量可将解释型字符串字面量分成多行,还可以在其中包含制表符合其他格式选项。原始字符串字面量是用反引号括起,如'hello'。不同于解释型字符串,原创 2021-04-07 14:34:56 · 515 阅读 · 0 评论 -
Go语言学习笔记(八)
Go语言学习笔记(八)八、创建方法和接口1.八、创建方法和接口在(七)中1.原创 2021-04-07 12:56:16 · 146 阅读 · 0 评论 -
Go语言学习笔记(七)
Go语言学习笔记(七)一、使用指针和结构体1.结构体的定义2 创建结构体3 嵌套结构体4 自定义结构体数据字段的默认值5 比较结构体6 理解公有和私有值7.区分指针引用和值引用一、使用指针和结构体1.结构体的定义结构体是一系列具有指定数据类型的数据字段,通过使用结构体,可在单个变量中存储众多结构不同的数据字段。package mainimport "fmt"type Movie struct { Name string Rating float32}func main() {原创 2021-04-06 22:15:55 · 201 阅读 · 0 评论 -
Go语言学习笔记(六)
Go语言学习笔记(六)一、数组、切片(slice)和映射1 使用数组2 使用切片2.1 在切片中添加元素2.2 从切片中删除元素2.3 复制切片中的元素3 使用映射(map)3.1 删除映射的元素4 注意事项题外话:一、数组、切片(slice)和映射前言,在本章中,将学习关于数组的相关知识1 使用数组数组的定义格式如下: var <数组名> [<数组长度>]<数组类型> //e.g. var cheeses [2] string数组的使用实例,如下:p原创 2021-04-06 19:41:05 · 155 阅读 · 0 评论 -
Go语言学习笔记(五)
Go语言学习笔记(五)一、控制流程1 if语句2 else语句3 else if语句4 比较运算符5 算术运算符6 逻辑运算符7 switch语句8 for语句8.1 只包含条件的for语句8.2 包含初始化语句和后续语句的for语句8.3 包含range子句的for语句9 defer语句题外话:一、控制流程前言:所谓的控制流程其实就是C++或者是python的if-else语句等1 if语句package mainimport "fmt"func main() { b := true if原创 2021-04-06 13:39:16 · 164 阅读 · 0 评论 -
Go语言学习笔记(四)
Go语言学习笔记(四)一 使用函数1.1 函数是什么?1.1.1 函数的结构1.1.2 编写函数要注意什么![在这里插入图片描述](https://img-blog.csdnimg.cn/20210405152811262.png)![在这里插入图片描述](https://img-blog.csdnimg.cn/20210405152834324.png)1.1.3 函数返回多个值1.2 定义不定参数函数一 使用函数函数是编程的一个核心要素,在Go语言中,函数的重要性不言而喻,在学习关于函数的使用上,可原创 2021-04-06 00:22:04 · 234 阅读 · 2 评论 -
Go语言学习笔记(三)
Go语言学习笔记(三)一、理解变量1.1 变量是什么1.1.1 为变量赋值的方法1.2 快捷变量声明1.3 理解变量和零值1.4 编写简短变量声明1.5 变量的声明方式1.6 理解变量作用域1.7 使用指针1.8 声明常量题外话:一、理解变量1.1 变量是什么变量的定义(自己想)Go语言是一种静态类型语言,声明变量必须显式或者隐式地指定其类型。1.1.1 为变量赋值的方法声明变量的方法和别的语言类似,可以在声明的时候初始化,也可以先声明在赋值,但是要注意的是,Go语言不支持不同类型变量之间的原创 2021-04-05 15:09:49 · 193 阅读 · 1 评论 -
Go语言学习笔记(一)
Go语言学习笔记(一)1.初识Go语言1.1Go简介1.2 Go是编译型语言1.3 编译型语言和解释型语言的区别1.4 Go是一种静态类型语言2 正式学习2.1 第一个Go程序hello world2.2 Go程序的运行题外话:1.初识Go语言1.1Go简介Go(或Golang)是Google在2007年开发的一种开源编程语言,出自Robert Griesemer、Rob Pike和Ken Thompson之手。2009年11月10日,Google Open Sourse Blog向全球发布了这款语原创 2021-04-05 11:36:22 · 3051 阅读 · 8 评论 -
Go语言学习笔记(二)
Go语言学习笔记(二)1 命令行参数1.1 os.Args2.Go数据类型2.1类型简介2.2常见类型声明2.3 常见类型2.3.1 布尔类型2.3.2 数值类型2.3.2.1 字符串类型2.3.2.2 数组2.4 检查变量的类型2.5类型转换1 命令行参数大部分的程序处理输入,然后产生输出,这就是关于计算的定义,数据的输入可以是程序自己产生,但大部分时候程序的输入来自于外部源:文件、网络连接、其他程序的输出、键盘、命令行参数等1.1 os.ArgsGo语言中的os包提供一些函数和变量,以与平台无原创 2021-04-05 11:42:02 · 285 阅读 · 0 评论