前言 今天是我golang框架阅读系列第三篇文章,今天我们主要看看gin的框架执行流程。关于golang框架生命周期源码阅读下面是我的计划: 计划 状态 Go框架解析-beego done Go框架解析-iris don…
标签:go
微服务系列(一) Go RPC 源码解读
RPC 框架在微服务中重要的一部分,熟悉和了解其原理是非常有必要的。Go 语言中源码自带实现了 RPC 功能,虽然官方已经宣布不再更新,但是因它实现简单,代码量不大,很多地方值得学习和借鉴,是阅读 RPC 源码的一个非常…
cache2go源码阅读
简介 项目源码:https://github.com/muesli/cac… 这个项目代码量很少,看完再模仿写一遍后觉得非常适合初学者。这也是我看的第一个go项目。对学习锁和并发有很大帮助,里面的很多代码姿势…
Go 程序是怎样跑起来的
刚开始写这篇文章的时候,目标非常大,想要探索 Go 程序的一生:编码、编译、汇编、链接、运行、退出。它的每一步具体如何进行,力图弄清 Go 程序的这一生。 在这个过程中,我又复习了一遍《程序员的自我修养》。这是一本讲编译…
Go Modules 踩坑总结
微信公众号「后端进阶」,专注后端技术分享:Java、Golang、WEB框架、分布式中间件、服务治理等等。 在 Java 的项目中,有 Maven 和 Gradle 这些很好用的依赖版本管理工具,简直不要太方便了,但是在…
一分钟系列: Go 编程之用时定义
原文发布于我的个人网站: GitDiG.com, 原文链接: 一分钟系列: Go 编程之用时定义. 研究 Go 大神的开源库,常常会有惊喜。以 Dave Cheney 的开源库github.com/pkg/profile…
golang练手小项目系列(6)-使用map实现set
问题描述 go没有提供set数据结构,请用map实现set 要点 需要支持方法: Add 添加元素 Remove 删除元素 Cardinality 获取 Set 长度 Clear 清空 Set Contains 检测元素…
golang练手小项目系列(1)-位向量
本系列整理了10个工作量和难度适中的Golang小项目,适合已经掌握Go语法的工程师进一步熟练语法和常用库的用法。 问题描述: 有一组非负整数,实现一个位向量类型,能在O(1)时间内完成插入、删除和查找等操作。 要点: …
安利一波在线代码编辑器网站
每次验证一些小代码老是需要在编辑器上面新建文件(心累)… 于是乎手动撸了一个在线代码编辑器网站:Coding代码在线编辑器 目前暂支持go, php, python, shell, ruby等多种语言 如需要其他语言或者…
json序列化和反序列化
序列化和反序列化 1、JSON的序列化 1.1序列化 struct、map、slice 对于json的序列化和反序列化,go的encoding/json 包提供了一些列的方法。 常用的比如 func Marshal(v …
go语言——测试
go语言测试 测试的目的是确认目标代码在给定的场景下,有没有按照期望工作 。一个场景是正向路经测试,就是在正常执行的情况下,保证代码不产生错误的测试。另外一些单元测试可能会测试负向路径的场景,保证代码不仅会产生错误,而且…
包和包管理工具
Go语言——包和包管理工具 1、包简介 1.1 工作空间 go语言的工作空间必须由 bin、pkg、src三个目录组成 workspace | +--- bin // go install 安装目录。 | | | +--…