发布于 2014-07-04 23:00:53 | 292 次阅读 | 评论: 0 | 来源: 网友投递
Go语言
Go是一种新的语言,一种并发的、带垃圾回收的、快速编译的语言。Go是谷歌2009年发布的第二款编程语言。2009年7月份,谷歌曾发布了Simple语言,它是用来开发Android应用的一种BASIC语言。
今天 Express 的作者 TJ Holowaychuk 发了一篇文章,正式宣告和 Node.js 拜拜了,转向 Go 语言。
如果你在做分布式工作,你会发现 Go 语言丰富的并发原语非常有帮助。虽然我们用 Node 的 generator 也可以做类似的事,但在我看来,generator 永远只能做一半。没有独立的栈错误处理和报告,充其量是中等。我也不想再等(Node)社区花3 年去整理(改善),尤其是我们已经有了可用并不错的解决方案。
在我看来,Go 语言的错误处理非常出色。必须考虑每个错误,决定该怎么做,Node 在这方面挺好的。不过 Node 在下面这些方面,就……
you may get duplicate callbacks
ou may not get a callback at all
you may get out-of-bound errors
emitters may get multiple “error” events
missing “error” events sends everything to hell
often unsure what requires “error” handlers
“error” handlers are very verbose
callbacks suck
当然了,作者也说了,NodeJS 也挺好,但他在目前项目中是没兴趣再用了。他转向 Go 语言,也并不意味着 Go 就完美无缺。
另外,因为放弃 NodeJS,作者在找人维护。
I’ve been fighting with Node.js long enough in production now that I don’t enjoy working with it anymore unfortunately, so at least for now this my formal farewell! And more importantly I need maintainers!
英文全文:https://medium.com/code-adventures/farewell-node-js-4ba9e7f3e52b