Month: February 2013

  • Death is coming. Let’s Go!

    Life is short. Use Python.zq-python

    早上某 Golang 群里有同学对 Python 社区的荐言给予了高度评价:

    人生苦短,我用 Python。
    Lift is short, use Python.

    对此,地鼠大神托我转告大家:

    Death is coming. Let’s Go!

    zq-python

  • [翻译]Go 和汇编

    使用 cgo 让 Go 跟 C 一起工作已经不是啥稀奇的了。有大量的第三方包直接对 C 的库做了封装,提供给 Go 使用。从 Go 项目本身的代码中可以看到,不但有 C 代码,还有汇编代码存在。那么在自己的项目中是否能跟汇编结合呢?这篇文章完整并清晰的解说了如何让 Go 和汇编协同工作。真得性能敏感?上汇编吧!!

    ————翻译分隔线————

    Go 和汇编

    关于 Go,我最喜欢的部分之一就是它那坚定不移的实用主义线路。有时我们过于强调语言的设计,而忘记了编程所包含的其他内容。例如:
    (more…)

  • [翻译] Go(#golang) 实现的状态机

    春节前,粗略研究了一下微信的公共帐号。用 Golang 实现了一个简单的 package wechat,用于接入微信公共帐号。当时就在思考,微信的文字交互过程如果要实现有一定逻辑的复杂过程,可能需要使用到状态机。然后,就看到了这篇文章:《State machines in Go (#golang)》。非常合时宜啊!翻译于此,以飨读者!

    ——–翻译分隔线——–

    Go(#golang) 实现的状态机

    我已经用 Go 代替 Python 重写了一个关键的服务组件。由于 Python 的解释器不是线程安全的,所以在解析的时候使用了全局锁。Go 与 Python 不同,它内建了并发支持,并且是静态编译的。
    (more…)

  • [翻译]在 Go 应用中使用简明架构(5)

    原文在此,续……

    ——–翻译分隔线——–

    在 Go 应用中使用简明架构(5)

    基础层

    就像上面提到的,我们的存储认为“数据库”是一个可以用 SQL 请求发送或接收数据行的抽象。它们不关心基础构建的问题,例如链接到数据库,或使用哪个数据库。这是在 src/infrastructure/sqlitehandler.go 中完成的,高层次的 DbHandler 接口是通过调用低层次的功能来实现的:
    (more…)