LOADING

Follow me

Go 反射实践及剖析
十二月 9, 2016|Golang

Go 反射实践及剖析

在用Go做orm相关操作的时候,经常会有struct之间的拷贝。比如下面两个struct之间要拷贝共同成员B,C。这个在struct不是很大的时候从来都不是问题,直接成员拷贝即可。但是当struct的大小达到三四十个成员的时候,就要另辟蹊径了。

no comments
Go 中的锁源码实现:Mutex
十二月 9, 2016|Golang

Go 中的锁源码实现:Mutex

上一篇文章《当我们谈论锁,我们谈什么 》 中我提到了锁,准确地说是信号量(semaphore, mutext是semaphore的一种)的实现方式有两种:wait的时候忙等待或者阻塞自己。

no comments
Golang的方法集继承规则示例
十二月 9, 2016|Golang

Golang的方法集继承规则示例

首先,我们声明示例的基本操作结构体。我们声明了一个 Cat 的 type,在它的基础上我们声明一个Meow的method:

no comments
S.O.L.I.D 原则在 Go 中的应用
十二月 9, 2016|Golang

S.O.L.I.D 原则在 Go 中的应用

前言由于自己最近灵感枯竭,所以我决定翻译一篇别人的文章 O(∩_∩)O~。作为一个一直想学 Go,但想了好久还没入门的人,我挑了篇写 Go 的文章,顺便帮自己熟悉一下 Go。原文是 Dave Cheney 根据自己 GolangUK 的演讲所整理的,全文以 SOLID 原则为线路,讲述了什么样的 Go 代码才算是好代码,当然 SOLID 原则也适用于其他语言。

no comments
为什么Go是一种设计糟糕的编程语言
十二月 9, 2016|Golang

为什么Go是一种设计糟糕的编程语言

好吧,我承认这个标题有点放肆。我多告诉你一点:我爱肆意妄言的标题,它能够吸引注意力。不管怎样,在这篇博文中我会试图证明 Go 是一个设计得很糟糕的语言(剧透:事实上它是)。我已经摆弄 Go 有几个月了,而且,我想我在六月某个时候运行了第一个 helloworld 程序。虽然我的数学不太好,但在那之后已经有四个月了,并且我的 Github 上已经有了几个 package。不必多说,我仍完全没有在生产中使用 Go 的经验,所以把我说的有关 “编码支持”、“部署”以及相关内容当作不可尽信的吧。

no comments
如果裸写一个goroutine pool
十二月 9, 2016|Golang

如果裸写一个goroutine pool

在上文中,我说到golang的原生http server处理client的connection的时候,每个connection起一个goroutine,这是一个相当粗暴的方法。为了感受更深一点,我们来看一下go的源码。先定义一个最简单的http server如下。

no comments
6 / 5340
1 2 3 4 9
About Me
Hello, My name is zoues. I'm a PaaS Developer from SuZhou.
ADVERTISING
AD UNIT