1
WildCat 2016-07-18 00:02:03 +08:00 via iPhone
JavaEye 的创始人 Robbin 比较反对,主要是他认为社区国人比例过高
|
2
holyghost 2016-07-18 00:09:05 +08:00
go 和 rust 我选后者
反正写应用都不是 java 的对手 |
3
scnace 2016-07-18 00:21:58 +08:00 via Android
golang 的开源环境还是挺好的呀(一个 go get 小能手视角
|
4
SlipStupig 2016-07-18 01:10:52 +08:00 1
@holyghost 同样选 rust ,对 go 不是特别看好,但是 rust 曲线太陡峭了,而且包不够丰富,至今也没学明白!
|
5
echo1937 2016-07-18 01:48:54 +08:00 via iPhone
我还是把精力比较多花在 Java/C 上面, JS 也不错。
|
6
hooluupog 2016-07-18 02:13:57 +08:00
挺好的,我就是 java+Go 。我很看好 Go 。
java 主要工作使用,写一些其他的工具都用 Go ,以前都是拿 python 写。 |
7
Jet 2016-07-18 02:36:26 +08:00
go 作为主要开发语言好几年了。
表示不需要其它语言了。 |
8
caola 2016-07-18 02:50:36 +08:00
个人觉得 python 是个不错的选择之一
|
9
gowk 2016-07-18 07:28:48 +08:00 via Android
@SlipStupig 呵呵,呵呵呵
|
10
riverphoenix 2016-07-18 07:43:48 +08:00 via Android
Go 真心不错,写了几天,再用回 java 各种不适应
|
11
roychan 2016-07-18 07:49:47 +08:00
学校开了 Rust 课,学了一点。感觉这语言不是很省心。做系统编程可能还行,搞开发还是算了。
|
12
R18 2016-07-18 07:51:36 +08:00 via Android
我也有这个打算,学完 JS 高级就打算学了,不过没有可供离线的手册一类的东西好像。
|
13
songjiaxin2008 2016-07-18 08:13:32 +08:00 via iPhone 1
@R18 了解一下 go doc
|
14
darasion 2016-07-18 08:17:01 +08:00
什么第二第三,工作用啥,你就得学啥!
|
16
Powered 2016-07-18 08:27:11 +08:00 via Android 1
说几点自己的体会: ):
1/纯语法的学习是很快的,类库的学习重点在于多写多练多熟悉 2/需求驱动,用它去实现需求 3/Go 相对 c 有 gc ,但是存在的问题是延迟很高,十万个对象 1ms 的扫描时间,对需要 keep 很多对象的情形不友好。当然解决办法也很多 4/调优 pprof 全面且可读 5/社区中国人最活跃 6/云计算的开源框架,几乎都是 go 写的, docker , etcd,runc,TiDB... 7/go 是同步,处理高并发很适合 |
17
zhuangzhuang1988 2016-07-18 08:34:05 +08:00
java?
那就 scala/kotlin/clojure 搞起来.. |
19
chai2010 2016-07-18 09:01:52 +08:00
Go 第一语言, Swfit 第二语言, C 负责给 2 者提鞋。
|
20
weiweiwitch 2016-07-18 09:06:46 +08:00
C 什么的转 go 不错, Java 什么的就不建议转 go 了。挑个 js 、 python 、 R 什么的学学挺好的。
|
21
janxin 2016-07-18 09:07:09 +08:00
第二语言我推荐 Python
|
22
ryanking8215 2016-07-18 09:18:14 +08:00
java 是静态语言, 再学门动态语言么, python or javascript
|
23
elgoog1970 2016-07-18 09:21:33 +08:00
工作中只有使用 golang,想学第二门语言,学什么比较好?
|
24
Clarencep 2016-07-18 09:25:24 +08:00
先学了再说,有这个功夫来讨论,都该把入门教程看完了
|
25
leitwolf 2016-07-18 09:45:26 +08:00
已经用 golang 替代以前 python 所做的工作了
|
26
21grams 2016-07-18 10:12:41 +08:00 1
go 只有中国人在用,也不知道中国人哪来的这股子热情,设计的稀烂的一门语言。
|
27
assassinpig 2016-07-18 10:16:37 +08:00
python
|
28
whaha123 2016-07-18 10:16:39 +08:00
我们把 go 作为主力语言使用,生产力很不错,尤其写高并发的服务很方便
|
29
kideny 2016-07-18 10:16:49 +08:00
我目前在学 html+css+js+php+shell+nginx+linux+mysql,
准备学 swift , go 。 |
30
ghostsf 2016-07-18 10:26:56 +08:00
学了再说
|
31
elone 2016-07-18 10:38:11 +08:00 via Android
用过一段时间 go ,语法总是爱不起来。
|
33
kiwi95 2016-07-18 10:45:46 +08:00 1
|
35
cloudzhou 2016-07-18 10:51:00 +08:00
大学毕业以来的学习路线: Perl - Java - Python - Golang
Golang 适合高并发和大流量的中间件,有静态语言的优势,写起来又非常的方便。 但是如果只是简单开发一个 Web 应用,用用成熟的框架就好了,并不一定要使用 Go 。 |
37
clino 2016-07-18 10:53:10 +08:00 1
不明白"社区国人比例过高"这个有什么问题...这不是自我种族歧视吗? 要是说很多素质低的国人在用 go 还好些.
|
38
TomShine 2016-07-18 10:55:53 +08:00
完全可以学习,挺好用的
|
39
raincious 2016-07-18 11:06:41 +08:00
@SlipStupig
等你真的写 Rust 的时候可能会有不同的看法。 Rust 还是比较独特的语言,比如有 Borrow 。 Borrow 这东西看起来很美,得到的效果也很好,但是有的时候就不是那么好用。 之前在用 Rust 写 Suffix Tree ,直接抄了别人的 Java 实现,这是他的: http://www.pastie.org/10904255 这是我转换过来的算法: https://gist.github.com/raincious/cb0b6b48efc3c63d6532c329fe362112#file-suffix_tree-rs-L70 算法本身几乎是一样的,但是我用了大量的代码来绕过 Borrow ,这同时导致代码运行起来比较慢。 所以这算法我自己用的时候还是改写成了 Unsafe 的,拿 Raw Pointer 直接上。 当然,我写的 Rust 代码加起来还不到 5000 行,有可能是我不懂所以才搞成这样。(貌似可以直接用 Box 而不用 Rc RefCell 组合?) |
40
eurry 2016-07-18 11:08:05 +08:00
第二语言我推荐 Javascript ,统治 Web 领域的语言
|
41
MyFaith 2016-07-18 11:09:15 +08:00
Python 吧
|
42
WildCat 2016-07-18 11:10:41 +08:00 via iPhone
@clino 不是歧视中国用户。我也是 go 的大量使用者,国人过多带来的问题:
一些国人的开源库无论是代码风格还是文档来看,不够国际化, issues 里也到处是中文。这相当于排除一些国外参与者。 这个社区还有一些奇怪的问题,比如一些之前火起来的库,例如 revel 、 gin ,突然就不维护了。 还有 TJ 也说过,做 Web ,对他而言,还是用 js 。 |
43
orvice 2016-07-18 11:13:01 +08:00
在学个脚本类型的语言吧。。
|
44
jy01264313 2016-07-18 11:17:24 +08:00
我觉得 java 熟练了再学习一下 python ,反正这两个我都是特别喜欢
|
45
weiweiwitch 2016-07-18 11:31:53 +08:00 1
|
46
Laughter 2016-07-18 11:50:29 +08:00
楼主, 我是写 java 后端的, 我司要求全面转向 golang web
golang 是很简洁, 但是生态不是很完善, 没有比较好的包管理 debug 基本靠日志, 没有顺手的 IDE 支持, 用 golang 写 web 真的是痛苦的, 第三方库和 java 是没得比的, 比较推荐 python |
47
Ixizi 2016-07-18 12:07:14 +08:00
语言只是工具
|
48
moose123 2016-07-18 12:15:30 +08:00
为啥不选 Clojure 呢,保证这是你最后一门学的语言:)
|
49
v1024 2016-07-18 12:17:24 +08:00 via iPhone
学学 js 你还能做前端
|
50
fuxiaohei 2016-07-18 12:19:54 +08:00
更推荐 clojure
|
51
songjiaxin2008 2016-07-18 12:31:53 +08:00 via iPhone
@fuxiaohei 我看您用 Go 挺多的,可以说说理由吗
|
52
isabelle810 2016-07-18 12:33:26 +08:00
。。。。
|
54
Em5O7B1JGfjQnBry 2016-07-18 12:40:37 +08:00 via Android
有空为什么不学学 lisp ,用 sicp 洗洗脑多好(・ิω・ิ)
|
56
GeekGao 2016-07-18 13:10:02 +08:00
Java first, then use Python
|
57
GeekGao 2016-07-18 13:11:01 +08:00
Go 的库实在太乱了,设计上没个统一的指导规范。
|
59
liuxey 2016-07-18 13:47:39 +08:00
首先 Go 和 java 从应用角度来说高度重合,所以不适合第二语言,不能扩展 LZ 的编程思想
其二,类库和 IDE 成熟度和 Java 差的不是几年能赶上的,而且楼上也说过了,社区国人比例过高并不是一件好事 最后我选 Rust |
62
only0jac 2016-07-18 14:09:17 +08:00
|
63
scarlex 2016-07-18 14:38:27 +08:00
我选了 Haskell , 诶嘿~
|
64
panlatent 2016-07-18 14:45:09 +08:00
自己学习的话, 我更建议选一本解释型的语言, 比如 Python PHP Ruby JS..... Go 虽然很多地方很好, 但是和 Java 应该是同类型语言. 函数式语言的话我们自己写程序应用较少. 有一个拿来就能写, 写完就能用, 语法不啰嗦, 学习挺简单的"脚本"语言挺好
|
65
wuxqing 2016-07-18 14:46:11 +08:00
go 和 rust 面向的领域不一样
go 的诞生就是为了高效的开发服务端应用, rust 是面向系统级开发,替代 c/c++的 go 已经在服务端大量使用了,不少公司也在使用 rust 可以说, 5 年内不会有大量使用的情况 |
69
douglarek 2016-07-18 15:57:19 +08:00
楼上的都那么厉害,随便举个语言满足以下五个优点( Golang 符合):
1. 编译速度快,真的快; 2. 无虚拟机 3. 垃圾回收; 4. 天然并发; 5.内置跨平台编译 |
70
winiex 2016-07-18 16:03:13 +08:00 1
尝鲜的话没问题,如果做第二语言的话不太推荐。 Java 程序员的话,建议可以学一门动态语言,推荐 python ,主要是感受社区文化和与不同的工程实践。
另外就是对 Java 深入挖掘,学的多不如学的深。 |
72
Tom008 2016-07-18 16:56:02 +08:00
@Laughter 我觉得 go 适合做 rest api , 你前后端完全分离的话 go 很合适,否则还是用 php 或者 java 吧! 个人认为 go 可以用来做 imsvr 之类的应用,偏向网络层。传统的 c/c++ 开发起来效率太低,而且程序容易 crash , java gc 延迟比较大,而 go 取其两者的优点。
|
74
9hills 2016-07-18 17:02:00 +08:00
|
75
sunsan05 2016-07-18 17:05:43 +08:00
连谷歌自己都不用的语言你们指望啥?
|
76
motecshine 2016-07-18 17:10:40 +08:00 via Android
@Laughter 你应该没有用过 vscose
|
77
motecshine 2016-07-18 17:11:30 +08:00 via Android
vscode
|
79
Laughter 2016-07-18 17:53:35 +08:00
@motecshine 试用了很多工具, vim-go atom+go 这两个插件更新跪掉的概率很高, 目前使用 idea+go ,
IDE 重度者, 之前使用 idea debug java 太爱了, 不知 vscode 的 debug 的效果如何? |
80
Laughter 2016-07-18 17:56:33 +08:00
@Tom008 是比较适合做 service 层, 直接 rest 比较好, go 的交叉编译很赞, 说到 GC, 额...没测试过, 不过 java 的 GC 是比较成熟的, 毕竟发展时间久
|
81
janxin 2016-07-18 19:45:55 +08:00
@Laughter vscode 的调试工具与 IDEA 的调试工具是一个,差距不大,不过 IDEA 我用的不多,具体差别不清楚了...
不能用有多种原因,尤其是 go 版本更新时,建议所有插件依赖一定更新一下,否则容易出各种诡异问题。 GC 成熟度现在只能说不错,但是超越 Java 还不能说。 一些数据可以参考 https://blog.twitch.tv/gos-march-to-low-latency-gc-a6fa96f06eb7 我们线上数据大致差不多 |
82
lightening 2016-07-18 19:47:10 +08:00
学学又没什么坏处咯。不过有点坑,比如那个没有版本号的包管理……
|
83
lightening 2016-07-18 19:48:04 +08:00 1
|
84
janxin 2016-07-18 19:56:34 +08:00
说道 Go 的版本号管理,现在第三方工具 Glide https://glide.sh 最新的更新已经支持 Semantic Versioning 功能,不过更多的功能是需要社区来做: 版本发布更多使用 tag 来进行。目前我常用的库里面只有 gopkg.in/redis.v4 和 github.com/labstack/echo 实现了 tag 管理,很多项目还是大版本的 branch 来做的。这个需要更多的社区支持。
|
85
janxin 2016-07-18 19:57:10 +08:00
@lightening 我觉得更像 C++继任者 :)
|
86
Balthild 2016-07-18 20:16:17 +08:00 via Android
@21grams 高中数学必修三第二单元逻辑学基础告诉我们,对于全称命题,只需要举出一个反例就可以驳倒。
举例子对你说的「只有中国人在用」是最好的反驳。他还举了三个个例,实际上举一个就够了。 |
88
eightqueen 2016-07-19 00:00:35 +08:00
不太喜欢 google 的开源技术,基本上都是试验性产品。
|
90
yangxiongguo 2016-07-19 05:59:55 +08:00 via iPad
同样的网站服务,中国用户人数是外国的几倍,这种高并发语言中国人用得多有什么问题了?
|
91
holyghost 2016-07-19 08:33:32 +08:00 via iPhone
|
93
exoticknight 2016-07-19 10:42:14 +08:00
一到这种帖子就超多人回复
|
94
smalltalk 2016-07-19 10:45:09 +08:00
go 除了在工具性应用中比 java 方便外,从性能到工具链到库全面劣于 java ,如果不喜欢 java 语法,可以 kotlin 搞起。
kotlin1.1 引入了 coroutine ,在表达能力上晋身一流行列。 go 仅仅是三流。 为了开拓眼界,可以搞搞 rust ,基本上算是 C++ 的最佳实践版。 还可以搞搞 swift ,这个语言进可服务端编程,退可移动开发,等以后语法上支持异步了, go 就死了。 |
95
jeremaihloo 2016-07-19 15:37:49 +08:00
看到一个一个大神在评价一门语言种种,给跪
|
96
flowerains 2016-07-19 17:39:11 +08:00
学 PHP 的如果想学一门其他语言扩展一下知识面 选什么好呢?
|
97
aabbccli 2016-07-19 17:42:44 +08:00
最后还是得深入学习 C 语言
|
98
shelltank 2016-07-19 21:54:04 +08:00
just go it
|
99
shelltank 2016-07-19 21:55:25 +08:00
云计算领域很多重量级的 project 都是 golang 写的。
|