IT技术博客大学习 共学习 共进步
首页 / 鸟窝
IT 2019-08-10 22:15:47 / 浏览 13,660

Go Reflect 性能

Go reflect包提供了运行时获取对象的类型和值的能力,它可以帮助我们实现代码的抽象和简化,实现动态的数据获取和方法调用, 提高开发效率和可读性, 也弥补Go在缺乏泛型的情况下对数据的统一处理能力。 通过reflect,我们可以实现获取对象类型、对象字段、对象方法的能力,获取struct的tag信息,动态创建对象,对象是否实现特定的接口,对象的转换、对象值的获取和设置、Select分支动态调用等功能, 看起来功能不错,但是大家也都知道一点: 使用reflect是有性能代价的!

IT 2019-07-26 14:09:47 / 浏览 1,580

使用 defer 还是不使用 defer?

对于Go语言的defer语句,或许你回经历一个 赞赏 --> 怀疑 --> 肯定 --> 再怀疑的一个过程,本文带你回顾一下defer的故事,以及如何在代码中使用defer语句。

IT 2019-04-08 00:59:05 / 浏览 2,120

[译]Go开发中一些有用的模式

从 VB.net、Java、C# 和 Python 开始转到 Go开发的时候,我对Go语言层级的模式的缺乏有点懊恼,这促使我花了一点时间找出容易表达的那些模式。 这里是一些通用的模式的集合,以及我发现的最容易表示它们的方式。​