阿猫的博客

阿猫的博客

Go

Project Root Is All You Need

前言 你是否也遇到过这样的问题:你的项目中有一个配置文件夹,底下有若干个配置文件。你需要在代码中根据环境读取其中的某一个,然后继续后面的流程。 - myAmazingProject - config - config.test.yaml - config.prod.yaml - inte
Go
243
0
2024-06-08

使用 Go 开发跨平台应用要点

Go 是一门对跨平台开发特别友好的语言,天生支持跨平台的编译,能够通过构建约束等方式对不同操作系统、架构采取不同的实现。本文试从开发中常用到的一些代码片段、功能讲起,在编写代码时就有意识地针对跨平台进行适配,而非先在开发平台上实现,在调试时再针对其他平台进行适配,影响开发效率。 在开发前,最好是看一
Go
464
0
2024-03-28

Go 函数式编程:从一个 for 循环讲起

背景 有一天,有一只刚毕业的猫去面试,面试官说:写一个函数,过滤一个切片里的所有奇数,留下所有的偶数。 这很简单,他马上写出了以下代码: package main func Filter(s []int) []int { result := []int{} for _, v :=
Go
326
0
2024-02-17

Gin 中间件执行顺序及一些误区

误区 1:c.Next() 后,修改 header 不生效 因为在 c.Next() 之前,已经把响应给到客户端了(c.Writer 已经 flush 了),因此再修改也没有用了。 在 controller 里面 c.Json() 之后,实际上响应已经 Render() 进 c.Writer 了(注
Go
502
0
2023-10-17

Golang i18n 之格式化千分位

这篇文章讨论了在国际化和本地化过程中,不同国家对千分位的表示方式的差异。作者提到,法国的千分位表示是空格。为了解决这个问题,可以使用Go语言的text包中自带的方法。文章中给出了一个示例代码,通过使用message.NewPrinter函数和不同的语言参数,可以打印出不同国家的千分位表示。文章还提供了一个参考链接,其中讨论了如何使用fmt.Printf函数在整数中添加千分位分隔符。
Go
558
0
2023-07-23

Gin 路由命中问题

Go
255
0
2023-06-28