随笔分类 -  Language/Golang

摘要:## 在Goland中运行单元测试报错`Error: Cannot find package` 如下图,在Goland中运行单元测试时报错:“Error: Cannot find package” ![](https://img2023.cnblogs.com/blog/722072/202308/ 阅读全文
posted @ 2023-08-15 21:51 nuccch 阅读(66) 评论(0) 推荐(0)
摘要:## 标准库包分类 Golang标准库可以大致按其中库的功能进行以下分类: 分类 | 对应包 | 描述 | | 输入输出 | bufio,fmt,io,log,flag | 这个分类包括二进制以及文本格式在屏幕、键盘、文件以及其他设备上的输入输出等,比如二进制文件的读写。 文本处理 | encodi 阅读全文
posted @ 2023-08-15 21:49 nuccch 阅读(228) 评论(0) 推荐(0)
摘要:## 数据加密 ### 对称加密 采用单密钥的加密算法,称为对称加密。 常见的单密钥加密算法有`DES`、`AES`、`RC4`等。 在对称加密中,私钥不能暴露,否则在算法公开的情况下,数据等同于明文。 ### 非对称加密 采用双密钥的加密算法,称为非对称加密。 在该系统中,私钥和公钥都可以被用作加 阅读全文
posted @ 2023-08-15 21:48 nuccch 阅读(38) 评论(0) 推荐(0)
摘要:## Go命令行工具 安装了Go语言的安装包后,就直接自带Go命令行工具。 ```shell # 查看当前安装的Golang版本 go version # 查看go命令行工具的帮助信息 go help ``` Go命令行工具可以完成如下工作: - 代码格式化 - 代码质量分析和修复 - 单元测试与性 阅读全文
posted @ 2023-08-15 21:48 nuccch 阅读(58) 评论(0) 推荐(0)
摘要:## Socket编程 Golang语言标准库对Socket编程进行了抽象,无论使用什么协议建立什么形式的连接,都只需要调用`net.Dial()`即可。 ### Dial()函数 `Dial()`函数的原型如下: ```golang func Dial(network, address strin 阅读全文
posted @ 2023-08-15 21:47 nuccch 阅读(119) 评论(0) 推荐(0)
摘要:## 并发基础 并发包含如下几种主流的实现模型: - 多进程 - 多线程 - 基于回到的非阻塞/异步IO - 协程 ## 协程 与传统的系统级线程和进程相比,协程最大的优势在于“轻量级”,可以轻松创建上百万个而不会导致系统资源枯竭,而线程和进程通常最多不超过1万个。 Golang在语言级别支持协程, 阅读全文
posted @ 2023-08-14 22:55 nuccch 阅读(111) 评论(0) 推荐(0)
摘要:## 类型系统 类型系统是指一个语言的类型体系结构,一个典型的类型系统通常包含如下基本内容: - 基础类型,如:byte、int、bool、float等 - 复合类型,如:数组、结构体、指针等 - 可以指向任意对象的类型(Any类型) - 值语义和引用语义 - 面向对象,即:所有具备面向对象特征(比 阅读全文
posted @ 2023-08-13 23:36 nuccch 阅读(48) 评论(0) 推荐(0)
摘要:## error接口 Golang中有一个关于错误处理的标准模式,即:`error`接口。 ```golang type error interface { Error() string } ``` 对于大多数函数,如果要返回错误,大致上都可以定义为如下模式: ```golang func Foo( 阅读全文
posted @ 2023-08-13 23:35 nuccch 阅读(33) 评论(0) 推荐(0)
摘要:## 函数定义 函数的基本组成:关键字func,函数名,参数列表,返回值,函数体,返回语句。 示例如下: ```golang func Add(a int, b int) (ret int, err error) { if a < 0 || b < 0 { err = errors.New("sho 阅读全文
posted @ 2023-08-12 23:41 nuccch 阅读(25) 评论(0) 推荐(0)
摘要:## 数据类型概述 Golang语言内置了如下基础数据类型: - 布尔类型:bool - 整型:int8,unit8,int16,uint16,int32,uint32,int64,uint64,int,uint,uintptr - 浮点类型:float32,float64 - 复数类型:compl 阅读全文
posted @ 2023-08-12 22:29 nuccch 阅读(38) 评论(0) 推荐(0)
摘要:## 什么在常量 在Golang中,常量是指在编译期就已知且不可改变的值。 ## 字面常量 在程序中硬编码的常量值被称为字面常量,如: ```golang -12 // 整数类型常量 3.1415926 // 浮点类型常量 3.2+12i // 复数类型常量 true // 布尔类型常量 "foo" 阅读全文
posted @ 2023-08-12 22:28 nuccch 阅读(49) 评论(0) 推荐(0)
摘要:## 变量声明 在Go中使用关键字`var`声明变量,格式为`var 变量名 变量类型`,如下示例: ```golang var v1 int // 整型 var v2 string // 字符串 var v3 [10]int // 数组b var v4 []int // 数组切片 var v5 s 阅读全文
posted @ 2017-08-09 23:46 nuccch 阅读(235) 评论(0) 推荐(0)
摘要:1. 下载https://golang.org/dl/ # Go语言官网地址,在国内下载太慢,甚至都无法访问。通过如下地址下载: https://golangtc.com/download 如果这个地址无法下载,可以换个地址:https://golang.google.cn/dl/ 2. 安装在wi 阅读全文
posted @ 2017-08-03 23:46 nuccch 阅读(535) 评论(0) 推荐(0)