GoLearning
文章平均质量分 88
Bagley Pan
这个作者很懒,什么都没留下…
展开
-
Go 1.13 errors 新特性(错误封装及 Unwrap、Is、As函数)的使用
Go 1.13 中新增了 errors 的一些特性,有助于我们更优雅的处理业务逻辑中报错的问题。本文主要展示 errors 包中新增方法的用法。原创 2023-08-01 12:26:25 · 1150 阅读 · 0 评论 -
从源码出发认识 Golang 中的 heap
在平时刷 LeetCode 准备算法题的时候不可避免的会遇到利用大(小)根堆或优先队列(利用堆实现)实现的解法。在其他语言中或许有现成的优先队列数据结构(例如 C++ 中的 priority_queue)因此实现比较方便,但是在 Golang 中并没有现成的数据结构可以使用,需要利用 heap 包去实现堆。原创 2023-07-27 21:39:21 · 233 阅读 · 1 评论 -
Go fuzzing模糊测试
Go fuzzing模糊测试fuzzing模糊测试在Go1.18中引入。官方文档:Tutorial: Getting started with fuzzing - The Go Programming Language,本文主要以官方文档的fuzzing入门教程为主,精简自认为重要的内容与自己的理解。因此相比官方文档略有简略,有步骤省略请查阅官方文档或参考资料中的翻译版本。编写待测函数(写一个BUG)在main.go文件中写入函数内容:func Reverse(s string) string {原创 2022-04-25 20:09:16 · 210 阅读 · 0 评论 -
使用Go和Gin开发Restful API
使用Go和Gin开发Restful API学习笔记自存,希望也能对您有所帮助,欢迎大神批评指教。官方文档:Tutorial: Developing a RESTful API with Go and Gin - The Go Programming Language简介Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错原创 2022-04-18 18:14:10 · 882 阅读 · 0 评论 -
Go1.18新特性 多模块工作空间
多模块工作空间(multi-module workspaces)是Go1.18中提出的新特性, 主要解决本地开发多模块项目中的一些麻烦。原创 2022-04-18 16:49:47 · 554 阅读 · 0 评论 -
Go1.18 泛型介绍——基于官方入门文档
Go语言 泛型Go1.18正式支持泛型,本文参考官方文档中关于Go泛型的入门文档抽取泛型编程的重点并适当补充。官方文档:Tutorial: Getting started with generics - The Go Programming Language本文为自存的学习笔记,希望也能对你有所帮助。什么是泛型?维基百科中对泛型定义如下:泛型程序设计(generic programming)是程序设计语言的一种风格或范式。泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在原创 2022-04-22 18:12:11 · 2169 阅读 · 0 评论