042011
 

鱼哥(https://twitter.com/#!/smallfishxy)上个月勒令我要完成 0.4 版的翻译。之前公司重组的时候,没顾上看英文版本的更新,结果这老外不声不响的做了如此之多的改动……

于是只好人工 diff,一条一条的对比 commit 内容。

总算是跟进到了 0.4 这个 tag。

发布一个可看的中文版吧:http://www.mikespook.com/learning-go/ (20110904)

未校对,未调整,未优化。你们懂的!

212011
 

Golang 错误处理的 Panic – Recover 模型确实不太一样,Go 团队的博客上写了一篇相对完整的介绍这个模型使用的文章“Error handling and Go”。我觉得挺好,故翻译于此。本应早就完成这个翻译了,不过由于公司重组等等原因,一直留了首尾没能处理完整。所以拖到了今天,真是不应该啊!

————————翻译分割线————————–

错误处理和Go

如果你已经编写过 Go 代码,可能已经遇到过 os.Error 类型了。Go 代码使用 os.Error 值来标示异常状态。例如,当 os.Open 函数打开文件失败时,返回一个非 nil 的 os.Error 值。

func Open(name string) (file *File, err Error)

下面的函数使用 os.Open 打开一个文件。如果产生了错误,它会调用 log.Fatal 打印错误信息并且中断运行。
Continue reading »

162011
 

继续前文的翻译。我本以为分成 3 段就可以完成翻译的,现在看,保守估计得 4 段了。保佑德国佬别再想起点什么加进去……

———————–翻译分割线———————–

Go编程语言,或者:为什么除了它,其他类C语言都是垃圾

[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(1)

[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(2)

[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(3)

缺失的东西

有一些东西没有进入 Go 中,而我确实很想念它们。我希望社区能找到将那些东西加入进去的办法,当然得保持 Go 轻量的形式。我期望看到许多不怎么重要的功能,而有些仅仅是愿望,只有一个是我真正想要的,那就是元编程。
Continue reading »

132011
 

继续前文的翻译。更进一步的对 Go 进行了介绍。一个德国人,用英文写了如此的长篇大论,这是一种什么样的国际主义精神……

———————–翻译分割线———————–

Go编程语言,或者:为什么除了它,其他类C语言都是垃圾

[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(1)

[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(2)

扩展

Go 真正强大的在于到现在为止,那些无法在 C、C++或者其他上面提到的任何语言中找到对应的地方。这些才是真正让 Go 光彩夺目的:

Continue reading »

102011
 

继续昨天的:[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(1)
总算切入正题,开始说 Go 了。

———————–翻译分割线———————–

Go编程语言,或者:为什么除了它,其他类C语言都是垃圾

(译注:续[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(1)

进入 Go 的世界

Continue reading »

082011
 

原文在这里:http://www.syntax-k.de/projekte/go-review。作者是 Jörg Walter,是个德国人。

根据 Rob Pike 在推上的说法,文章有一些错误,但看起来值得阅读。

“Why all C-like languages except one suck”: http://www.syntax-k.de/projekte/go-review Some errors in there but a positive response.

Continue reading »

242011
 


Google I/O 2011 的官方视频大部分都已经放出了。昨天 Golang 团队也发布了 Google I/O 2011 上关于 Go 的相关视频。

由于众所周知的原因,大家不能拜访“油吐伯”。所以视频我放到土豆上了。

大家看到的这个蓝色毛绒公仔叫“Gopher”,很有爱的 Golang 吉祥物,这次也出现在 Google I/O 2011 的现场。

不知道能不能搞到一个正版的。其实我严重怀疑这个来自悉尼的公仔是东莞产的……你们懂……

Continue reading »

232011
 

学习 Go 已经有一段时间了,关于《学习Go语言》的翻译进度一如既往的像之前一样缓慢。每当翻译到一处,看到 Go 语言那精妙的设计的时候,就会忍不住想写点什么。好吧,其实我之前的计划是写一个自己用的proxy,不过还是算了吧,原因大家都懂。轮子造太多,没意思。

在整理一些之前的技术架构和思考新的架构的过程中,一次又一次提高了 Gearman 在系统中的重要性。虽然基于“新项目用老技术,老项目用新技术”的原则,并不打算在新的项目中使用 Golang。不过,总会有一天新项目要变成老项目吧?总会有一天,老项目需要做一些调整吧?理由牵强了点,但总是给自己找到了一个做的理由。

于是就有了这个:http://bitbucket.org/mikespook/gearman-go
Continue reading »

112011
 

就在我还寻思什么时候 Google 会在 NDK 里加入 Go 支持的时候,冷不丁的,Google 发力了。App Engine 支持 Go 了。下面是来自官方文档的概述。

————————翻译分割线————————

App Engine Go 概述

欢迎来到用于 Go 的 Google App Engine!实验性质

利用 App Engine,可以使用 Go 编程语言构建 Web 应用。Go 应用运行在 Google 的可伸缩的基础平台上,并使用大规模的持久化存储和服务。
Continue reading »

222011
 

最近看到许多朋友都在问类似的问题:Go 能做什么?Go 有实际应用吗?敢不敢在实际项目中使用 Go 呢……

正好,golang 的博客刊登了 Heroku 的两个系统工程师关于 Go 语言在他们的分布式系统中的应用的文章。

大家还记得 Doozer 吗?对,我之前有过翻译高速数据同步服务器——Doozer。貌似就是这群优秀的工程师搞出来的杰作。他们作为 go 语言应用的先行者,的确值得我们关注他们的工作,学习他们的经验,并向这群优秀的工程师致敬!

原文在此:http://blog.golang.org/2011/04/go-at-heroku.html
——————————-用于致敬的翻译分割线——————————-
本周的博客内容是由 Heroku 的系统工程师 Keith RarickBlake Mizerany 撰写的。用他们自己的话说,他们“吃、喝、睡在分布式系统上”。这里讨论了一些他们应用 Go 的经验。

构建分布式系统的一个巨大的问题是物理服务器之间的协作。每个服务器需要知道关于系统整体上的各种情况。这些关键数据包括锁、配置数据等等,而即便是在数据存储异常的情况下,这些也必须是一致并且可用的。因此,需要一个有着绝对一致保障的数据存储。对于这个问题的解决方案是 Doozer,一个用 Go 编写的、新的、一致性的、高可用的数据存储。
Continue reading »