粗大事了:花两天时间学习了 Go 语言,发现比 Node.js 高不知多少去了

2016-04-03 16:19:20 +08:00
 xhowhy

先说感受到的先进性:

  1. 语法非常简洁,有种在学 C 语言的感觉,学习过程觉得很轻松,没有太陡峭的曲线,但语言也完全够用
  2. 自带工具就非常强大,而且各 IDE 和 Editor 都能集成,开发工具完全不是问题
    • go get = git clone + go install ,从 github 上直接 clone 下源码,编译出 .a 包文件和安装 bin 到 $GOPATH ,就可以本地任意地方使用了。反观 npm ,相信很多人不知道 NODE_PATH 的存在。
    • gofmt 代码风格统一,码农们再也不用为空格与 Tab 争吵了
    • go test 支持 benchmarks 和覆盖率测试
    • godoc 查看文档的工具。支持本地执行 godoc -http=:8080 后就能在浏览器中访问 golang.org 的本地 copy 版,对被墙的同学是个不错的选择
  3. 支持 Github ( Gitlab 等也可以)远程包,不需要发布到类似 npm 那样的地方
  4. 并发用协程和 channel 非常容易写,业务逻辑中可以尽量避免回调
  5. 部署非常简单,可以运行二进制文件,也可以通过 go get 来安装 bin ,运维起来非常方便
  6. API 稳定,据说从发布到现在语法基本没变,只是 Go 内部做了改进和优化
  7. 本人还用 Swift 写过 iOS ,发现 Swift 似乎是从 Go 身上学了不少东西。。

劣势:

  1. G...FF..WWW ,想下个 pkg 安装文件非常困难,最后是通过 brew 下载的
  2. 国内资料少(这么简单的语言,似乎也不需要什么资料)
  3. 社区小不如 npm ,国内想找个工作更是困难

不确定性:

  1. 性能与 Java 比如何,相当于什么水平

综上所述,感觉 Go 确实是一个目前比较理想的开发工具,大家一起讨论讨论,人生苦短,为何不用 go ?

55013 次点击
所在节点    Node.js
197 条回复
xhowhy
2016-04-03 23:44:52 +08:00
@demomaster 就语法而言, C 语言之父 Dennis 编写的《 C 程序设计语言》就讲完了,就很薄的一本书。语法简洁不代表代码就没有复杂度,同理 lisp 。
demomaster
2016-04-03 23:51:13 +08:00
@xhowhy Pascal 还 35 页呢,再说了**<<The C Programming Language>>**又不是初学者看的.书薄不代表语言简洁.
xhowhy
2016-04-03 23:52:08 +08:00
@superhxnju 某些 node 社区的人哪里知道什么泛型,就信仰 callback 是宇宙无敌黑科技,听不得别人黑 node ,见不得别人有不同观点。。我日常工作就是搞 node 的,拿 go 出来与 node 比较一下,就被喷成不懂 callback 和装了,呵呵
nareix
2016-04-03 23:57:02 +08:00
恭喜 lz 脱离苦海。动态一时爽,重构火葬场。
xhowhy
2016-04-04 00:01:27 +08:00
@demomaster C 语言语法简洁全世界公认,就你不这么想,你是故意抬杠还是智商捉急呢?
xhowhy
2016-04-04 00:02:55 +08:00
@nareix node.js 也正在往静态上靠呢 服务端开发太需要静态了
demomaster
2016-04-04 00:04:42 +08:00
@xhowhy 世界公认,给个链接看看? 说两句就人身攻击了,真是智商捉急
bramblex
2016-04-04 00:05:49 +08:00
@xhowhy

呵呵,傻 x
xhowhy
2016-04-04 00:08:26 +08:00
xhowhy
2016-04-04 00:10:07 +08:00
@demomaster 我先人参攻击?谁一上来不分青红皂白地说别人装呢?哥装用得着你说?你是 @bramblex 猴子派来的逗逼吧,两人一副德行
demomaster
2016-04-04 00:12:00 +08:00
@xhowhy 给个维基的链接什么意思哦?ctrl+F "简洁"到一个结果,还是说 goto 的
xhowhy
2016-04-04 00:17:56 +08:00
murmur
2016-04-04 00:19:51 +08:00
go lang =够烂
在宇宙第一语言 php 之前什么都是渣
(java 属于信仰问题 不在讨论范畴内)
xhowhy
2016-04-04 00:24:29 +08:00
@murmur 就喜欢这种喷子 不喜欢某些一上来不喷事先喷人的人 @demomaster @BXIA
RqPS6rhmP3Nyn3Tm
2016-04-04 00:49:22 +08:00
@xhowhy 抱歉,为啥要 at 我……
我只是不明真相的吃瓜群众……
xhowhy
2016-04-04 00:54:47 +08:00
@BXIA sorry ,俺错了,你只是碰巧和大喷子 @bramblex 一样,名字都是 b 开头。。
RqPS6rhmP3Nyn3Tm
2016-04-04 00:58:46 +08:00
@xhowhy 哇靠吓死了, V 站撕逼请务必不要叫上我……
hxtheone
2016-04-04 02:02:30 +08:00
LZ 你这是要搞出个大新闻啊
Akasha
2016-04-04 03:51:16 +08:00
楼主支持你,新东西需要敞开胸怀去接受
iannil
2016-04-04 04:38:44 +08:00
热闹,占座。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/268296

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX