[翻译]从 r60 到 Go 1

Go1 发布的日子越来越近,Golang 社区就像将开了的山泉水一样,泊泊的不断传来各种关于 Go1 的声音。 这篇文章总结得比较完整,很清晰,随即翻译于此。 原文:http://gophersays.com/from-r60-to-go1/ —————-翻译分割线—————- Go 1 已经到门口了,伙计们,它有许多变化! 这里是关于你必须知道的一些重要事情: Go 命令 新的 map delete 语法 Error 有了自己的包 重写的库 新的库 Go 命令 Go 有了新的主命令,go,用于...阅读全文

mikespook 的博客 2012/02/13 mikespook

[翻译]go 工具

go 工具来了,集大成,全整合。没了 Makefile 还真有点不习惯。此文甚好,早就想翻译了,无奈最近焦头烂额……不管怎么样,还是动手了。 原文要翻墙,访问请谨慎:The go tool —————-翻译分隔线—————- 线上介绍了 go 命令的最新 weekly 发布后,我决定写一些关于它的内容。我得承认,在第一次听说统一 go 工具的时候,我满是怀疑并对此非常恐惧。我担心它会像大多数其他语言特定的包管理器一样混乱。个人认为多数这种包管理器都是在重新发明轮子,并且与操作系统的包管理器发生冲...阅读全文

mikespook 的博客 2012/02/17 mikespook

[翻译]Go 环境设置

在最近的 weekly 版本中,golang 已经将大多数操作集成到了 go 这一个工具。并且环境变量的设置也发生了变化。不过蛋疼的是,如果不理解 GOPATH 的真正用法,只会让你蛋碎一地。 最常见的错误: can't load package: .: path "/pla/pla/pla" not inside a GOPATH 这篇文章,简短、清晰的解释了新的 go 环境应当如何设置。 作者 Frank Müller,原文在此:http://mue.tideland.biz/2012/02...阅读全文

mikespook 的博客 2012/02/29 mikespook

[翻译]Go 版本 1 发布

原文:http://blog.golang.org/2012/03/go-version-1-is-released.html —————-翻译分隔线—————- Go 版本 1 发布 今天,在 Go 编程语言的开发上标记了一个主要的里程碑。我们宣布 Go 版本 1,或者简称为 Go 1,定义了一个语言和一系列的核心库作为基础,用于创建可信赖的产品、项目和出版物。 Go 1 是 Go 的第一个发布,提供了二进制包。可用于 Linux、FreeBSD、Mac OS X 以及,令人非常兴奋的——Wi...阅读全文

mikespook 的博客 2012/03/29 mikespook

MyMySQL 的 database/sql 接口使用

最近看到不少朋友对 Golang 中操作 MySQL 数据库有疑问,那么就此内容给大家分享一下吧。 MyMySQL 的原作者是来自波兰的 ziutek,他根据 MySQL 的协议标准使用 Golang 实现了 MyMySQL 包。根据他的介绍,这个包可以用在 MySQL 4.1 或更高版本上,并且在 5.0、5.1 版本上经过项目的实际验证。 只要用 MySQL 做过项目的朋友一定遇到过编码问题,set names 几乎成为了中文环境下使用 MySQL 的标配。那么 Golang 也不能例外。不...阅读全文

mikespook 的博客 2012/05/04 mikespook

【翻译】Go 在 Heroku

最近看到许多朋友都在问类似的问题:Go 能做什么?Go 有实际应用吗?敢不敢在实际项目中使用 Go 呢…… 正好,golang 的博客刊登了 Heroku 的两个系统工程师关于 Go 语言在他们的分布式系统中的应用的文章。 大家还记得 Doozer 吗?对,我之前有过翻译高速数据同步服务器——Doozer。貌似就是这群优秀的工程师搞出来的杰作。他们作为 go 语言应用的先行者,的确值得我们关注他们的工作,学习他们的经验,并向这群优秀的工程师致敬! 原文在此:http://blog.golang....阅读全文

mikespook 的博客 2011/04/22 mikespook

【翻译】App Engine Go 概述

就在我还寻思什么时候 Google 会在 NDK 里加入 Go 支持的时候,冷不丁的,Google 发力了。App Engine 支持 Go 了。下面是来自官方文档的概述。 ————————翻译分割线———————— App Engine Go 概述 欢迎来到用于 Go 的 Google App Engine!实验性质 利用 App Engine,可以使用 Go 编程语言构建 Web 应用。Go 应用运行在 Google 的可伸缩的基础平台上,并使用大规模的持久化存储和服务。 Go 运行时环境 ...阅读全文

mikespook 的博客 2011/05/11 mikespook

Go 语言的 Gearman API

学习 Go 已经有一段时间了,关于《学习Go语言》的翻译进度一如既往的像之前一样缓慢。每当翻译到一处,看到 Go 语言那精妙的设计的时候,就会忍不住想写点什么。好吧,其实我之前的计划是写一个自己用的proxy,不过还是算了吧,原因大家都懂。轮子造太多,没意思。 在整理一些之前的技术架构和思考新的架构的过程中,一次又一次提高了 Gearman 在系统中的重要性。虽然基于“新项目用老技术,老项目用新技术”的原则,并不打算在新的项目中使用 Golang。不过,总会有一天新项目要变成老项目吧?总会有一天...阅读全文

mikespook 的博客 2011/05/23 mikespook

Go 在 Google I/O 2011 的视频

Google I/O 2011 的官方视频大部分都已经放出了。昨天 Golang 团队也发布了 Google I/O 2011 上关于 Go 的相关视频。 由于众所周知的原因,大家不能拜访“油吐伯”。所以视频我放到土豆上了。 大家看到的这个蓝色毛绒公仔叫“Gopher”,很有爱的 Golang 吉祥物,这次也出现在 Google I/O 2011 的现场。 不知道能不能搞到一个正版的。其实我严重怀疑这个来自悉尼的公仔是东莞产的……你们懂…… 用 Go 编写 Web 应用 演示文稿下载(英文) 这...阅读全文

mikespook 的博客 2011/05/24 mikespook

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

原文在这里: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. ———————–翻译...阅读全文

mikespook 的博客 2011/06/08 mikespook

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

继续昨天的:[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(1)。 总算切入正题,开始说 Go 了。 ———————–翻译分割线———————– Go编程语言,或者:为什么除了它,其他类C语言都是垃圾 (译注:续[翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(1)) 进入 Go 的世界 概述 在第一次听说 Google 的新编程语言时,我有一些怀疑。于是忽略了那条新闻。在那之后,下一代新的、伟大的语言就充满了各个地方。其中一些享受于璀璨夺目,然后就暗淡消沉;有一些...阅读全文

mikespook 的博客 2011/06/10 mikespook

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

继续前文的翻译。更进一步的对 Go 进行了介绍。一个德国人,用英文写了如此的长篇大论,这是一种什么样的国际主义精神…… ———————–翻译分割线———————– Go编程语言,或者:为什么除了它,其他类C语言都是垃圾 [翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(1) [翻译]Go编程语言,或者:为什么除了它,其他类C语言都是垃圾(2) 扩展 Go 真正强大的在于到现在为止,那些无法在 C、C++或者其他上面提到的任何语言中找到对应的地方。这些才是真正让 Go 光彩夺目的: ...阅读全文

mikespook 的博客 2011/06/13 mikespook

[翻译]错误处理和Go

Golang 错误处理的 Panic – Recover 模型确实不太一样,Go 团队的博客上写了一篇相对完整的介绍这个模型使用的文章“Error handling and Go”。我觉得挺好,故翻译于此。本应早就完成这个翻译了,不过由于公司重组等等原因,一直留了首尾没能处理完整。所以拖到了今天,真是不应该啊! ————————翻译分割线————————– 错误处理和Go 如果你已经编写过 Go 代码,可能已经遇到过 os.Error 类型了。Go 代码使用 os.Error 值来标示异常状态。...阅读全文

mikespook 的博客 2011/08/21 mikespook

《学习Go语言》0.4 中文版

鱼哥(https://twitter.com/#!/smallfishxy)上个月勒令我要完成 0.4 版的翻译。之前公司重组的时候,没顾上看英文版本的更新,结果这老外不声不响的做了如此之多的改动…… 于是只好人工 diff,一条一条的对比 commit 内容。 总算是跟进到了 0.4 这个 tag。 发布一个可看的中文版吧:http://www.mikespook.com/learning-go/ (20110904) 未校对,未调整,未优化。你们懂的!阅读全文

mikespook 的博客 2011/09/04 mikespook

[翻译]反射的规则

第一次知道反射的时候还是许多年前在学校里玩 C# 的时候。那时总是弄不清楚这个复杂的玩意能有什么实际用途……然后发现 Java 有这个,后来发现 PHP 也有了,再后来 Objective-C、Python 什么的也都有……甚至连 Delphi 也有 TRttiContext……反射无处不在!!! Go 作为一个集大成的现代系统级语言,当然也需要有,必须的! 大牛 Rob Pike 的这篇文章相对全面的介绍了 Go 语言中的反射的机制已经使用。觉得值得研读,于是翻译于此。 ———-翻译分割线——...阅读全文

mikespook 的博客 2011/09/13 mikespook

[翻译]飞翔的 gob

这个题目的原文叫做《Gobs on the wire》,作者巧妙的用了“gob”这个词。gob本来是Golang的一个关于网络通信协议的包。而在这里,我感觉标题也可以翻译为《关于线上的那一大陀……》。好吧,我得承认,这么翻译实在不雅。 ————翻译分割线———— 飞翔的 gob 这周,我想跟大家谈谈如何用 Go 编写基于同步请求和异步事件通知的 Client/Server 系统。 为了帮助学习 Go,我克隆了一个Conserver 命令行服务。当然,现在对于世界来说没必要有另外一个命令行服务。然...阅读全文

mikespook 的博客 2011/03/09 mikespook

go在stack上干了神马?

对这个话题已经有深入理解的童鞋请绕道; 对这个话题感兴趣,且有极强学习能力的同学请阅读这里,并且不用回来了。 其他和我一样愚笨的IT民工们,继续向前冲吧…… 【2013年3月21日】以下关于 stackless 的描述有致命的脑残错误,请忽略。感谢 @minux 指出。 首先,来看一段神奇的 golang 代码: package main var ( i = 1 ) func main() { i = i + 1 print(i, "\n") main() } 熟悉 c 语言的人都知道,如果在 ...阅读全文

mikespook 的博客 2011/03/15 mikespook

gocode——VIM 和 Emacs 的 golang 代码自动补全

虽然 golang 自身提供了 VIM 的语法高亮之类的脚本,但 autocompletion 并没有官方解决方案。无意之中发现 gocode 这个支持 VIM 和 Emacs 的 autocompletion daemon。 这里有个Flash 动画演示,展示了 gocode 的强大。我得说,用过之后,感觉速度确实够快。 下面是来自官方的部分介绍: 用于 Go 编程语言的自动补全守护进程 Gocode 是可以整合在如 vim 和 emacs 这样的代码编辑器中的辅助工具。它提供了一系列的高级功...阅读全文

mikespook 的博客 2011/03/18 mikespook

用Go实现异步的Web开发

不知道大家还记得不记得大约一年前,我的一个白日梦《关于Web编程异步模型的白日梦》,然后这个白日梦我又连续做了好几天《Web编程异步模型的PHP原生实现》、《Web编程异步模型的 Gearman 实现(残)》。 当时怎么也没相通,还死皮白赖的粘在PHP的异步实现上不肯放手。好吧,实现是繁琐的,应用是成功的,代码是容易写的,环境是要搭建的…… 昨晚睡觉前突然觉得自己应该真正用Go实现一下异步的Web,哪怕是个例子也好啊。于是,边吃饭,边敲了一票代码搞了一个很简单的demo,分享给大家吧。在这里下载...阅读全文

mikespook 的博客 2011/03/25 mikespook