想学一门新语言, go 和 Python 大家推荐哪个 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
shigure00
V2EX    程序员

想学一门新语言, go 和 Python 大家推荐哪个

  shigure00 2022-07-06 17:30:07 +08:00 10245 次点击
这是一个创建于 1192 天前的主题,其中的信息可能已经有所发展或是发生改变。

现在开发语言主要是 java 和 scala ,主要是写 spring boot 增删改查还有 spark/flink 开发

最近有些空余时间,感觉可以新学习一门语言,拓宽一下自己的技能,感觉最近 go 和 python 都大火,python 稍微了解点,go 是完全不了解,所以问一下大家这两门语言的前景如何,然后主要是用来做哪方面的开发。或者有没有其它的语言推荐。

98 条回复    2022-07-14 17:32:35 +08:00
yohole
    1
yohole  
   2022-07-06 17:35:12 +08:00   1
两年前我面临跟你一样的抉择,我写了比较长时间的 java ,始终适应不来 go 的语法,于是选择了 python 。

然后后面用 python 写了一些 demo 级的东西,有爬虫,有数据分析,也为了把 tensorflow 跑起来,了解了一些基础知识,但是由于始终没有工作场景,荒废一段时间了

于是。。。最近又开始重学了 C
iold
    2
iold  
   2022-07-06 17:35:22 +08:00   2
选 C: Rust
Dockerfile
    3
Dockerfile  
   2022-07-06 17:35:54 +08:00
这俩还是选 go 吧
qianxi0410
    4
qianxi0410  
   2022-07-06 17:44:17 +08:00
你写 scala 不该去学 Haskell 吗,go 的类型系统你受不了。
shyrock
    5
shyrock  
   2022-07-06 17:48:33 +08:00
难道不应该是 js ?这样一个人就全栈了啊
shigure00
    6
shigure00  
OP
   2022-07-06 17:51:12 +08:00
@qianxi0410 Haskell 也太硬核了,这东西学了怕是只能提升 fp 水平,没有具体场景可以用得到吧
shigure00
    7
shigure00  
OP
   2022-07-06 17:52:25 +08:00
@shyrock 阻挡我全栈的是 css ,而不是 js ,css 这玩意我觉得不是一般人能学会的
shigure00
    8
shigure00  
OP
   2022-07-06 17:52:47 +08:00
@yohole 多谢分享,我参考参考
garlics
    9
garlics  
   2022-07-06 17:56:17 +08:00
如果是兴趣推荐学 python ,感受一下动态语言的语法。前景就 go
xooass
    10
xooass  
   2022-07-06 17:58:50 +08:00
用来自己私活搞点东西就 py 这玩意就跟搭积木一样 做东西太舒服了

但是公司不会去用积木的,真要拿工资的那还是 go
XCFOX
    11
XCFOX  
   2022-07-06 18:02:05 +08:00   1
有 Java 基础 学这两门语言的语法半天就学会了,所以我觉得你应该都学一下。
Go 的主要应用场景是后端开发,目前市场比较火热。
Python 的主要应用场景是人工智能和大数据,不过这些学起来比 Python 本身费劲儿多了。

单纯享受学习编程语言这个过程的话,我会推荐学习 Rust 和 C#,现代且优雅。
ciki
    12
ciki  
   2022-07-06 18:02:11 +08:00
rust 啊
imycc
    13
imycc      2022-07-06 18:04:47 +08:00
储备技能用于转行:选 go
用来做玩具:选 python
catsoul
    14
catsoul  
   2022-07-06 18:13:27 +08:00
当然是 JS & TS
v23x
    15
v23x  
   2022-07-06 18:16:54 +08:00
2022 年了还学 python 啊....

哪怕学 Node.js 都比 python 好很多啊
v23x
    16
v23x  
   2022-07-06 18:17:51 +08:00
真要学新语言 现在这个阶段 肯定是 Rust 首选啊
BBCCBB
    17
BBCCBB  
   2022-07-06 18:19:10 +08:00
我前几年学 go, 现在在学 rust. 比较好的一门语言...
jujyjse
    18
jujyjse  
   2022-07-06 18:20:55 +08:00
建议都学
ChangQin
    19
ChangQin  
   2022-07-06 18:28:33 +08:00
为啥建议学 rust 的人那么多啊
SteinsGate
    20
SteinsGate  
   2022-07-06 18:40:35 +08:00 via Android
建议 go
billzhuang
    21
billzhuang  
   2022-07-06 18:42:51 +08:00   1
当然是 rust 了,毫无疑问。

挑难的学,简单的就不在话下了。
13d1101
    22
13d1101  
   2022-07-06 18:55:21 +08:00 via Android
rust ,正在学习中,推荐
nxcdJaNnmyF9O90X
    23
nxcdJaNnmyF9O90X  
   2022-07-06 19:21:04 +08:00
选 rust
233373
    24
233373  
   2022-07-06 19:22:47 +08:00
@shigure00 同后端,也是感觉 CSS 好难,但是慢慢用起来,多跟着 YB 上面的教程模仿几个网页,慢慢的就感觉没这么难了,还是写的太少
coolmenu
    25
coolmenu  
   2022-07-06 19:24:17 +08:00
rust 可以看看,uber 现在后台服务的选型是 zig ,加强版本的 C 语言,可以看看,rust 要是没啥项目,学了忘的特别快。
LxnChan
    26
LxnChan  
   2022-07-06 19:26:54 +08:00
@shigure00 我跟你正相反,感觉 js 里面有些东西才反人类;至于 css 可以找现成的然后在 DevTools 里面慢慢调。

顺便歪个楼问一下,现在我正在学 Go (以搞钱为最终目的),但是有点迷茫不知道 Go 能实现什么,以及学完了怎么强化和增加“工作经验”,请问大家现在怎么办。
liaohongxing
    27
liaohongxing  
   2022-07-06 19:27:00 +08:00
python 根本不用学 ,脚本语言轻松上手 。
Leviathann
    28
strong>Leviathann  
   2022-07-06 19:32:45 +08:00
@coolmenu uber 要从 go 迁移到 zig 了?
littlewing
    29
littlewing  
   2022-07-06 19:39:13 +08:00
rust
fox0001
    30
fox0001  
   2022-07-06 19:40:53 +08:00 via Android
go 吧
Moha
    31
Moha  
   2022-07-06 19:42:17 +08:00
为啥推荐 Rust 的这么多= =
coolmenu
    32
coolmenu  
   2022-07-06 19:42:53 +08:00
coolmenu
    33
coolmenu  
   2022-07-06 19:53:13 +08:00
@Leviathann 不过 uber 主要用的 zig 的工具箱,不是 language ,作者的标题有点歧义
roseduan
    34
roseduan  
   2022-07-06 20:08:11 +08:00
当年跟你类似,也是写 Java ,后来学了 Go ,转到 Go 做了一阵。
现在是用 C 语言。
mythabc
    35
mythabc  
   2022-07-06 20:12:35 +08:00
写 flink 应该是在做数据类工作把?往中间件走就学 go ,往应用、分析方向走就学 python
AV1
    36
AV1  
   2022-07-06 20:35:15 +08:00
只要你熟悉过至少一个编程语言,python 基本不用学,拿来就能直接用了。
alsas
    37
alsas  
   2022-07-06 20:40:17 +08:00
都学
dabaibai
    38
dabaibai  
   2022-07-06 20:52:42 +08:00
学 C 等于学了所有
DeWjjj
    39
DeWjjj  
   2022-07-06 21:01:33 +08:00
我以前以为学语言是一劳永逸的事情,一门打一一辈子。
后来,为了加钱,我把市面上的语言学了个七七八八。
des
    40
des  
   2022-07-06 21:07:47 +08:00 via iPhone
@billzhuang @coolmenu 确实,我已经从头学了三次 rust 了
shigure0
    41
shigure0  
   2022-07-06 21:13:02 +08:00 via iPhone
感谢各位,看上去 python 对找工作帮助不是太大,我决定先去学 go 了
shigure0
    42
shigure0  
   2022-07-06 21:16:48 +08:00 via iPhone
@mythabc 主要还是偏业务,因为数据量太大了,kafka 一天数据量几百亿,只能上 flink 和 spark 处理了
shigure0
    43
shigure0  
   2022-07-06 21:18:15 +08:00 via iPhone
@233373 我感觉我缺少某种思维方式,不能很好的把 ui 图通过布局代码写出来
shigure0
    44
shigure0  
   2022-07-06 21:18:44 +08:00 via iPhone
@XCFOX 好的好的,多谢建议,我决定先去学学 go
lmshl
    45
lmshl  
   2022-07-06 21:28:20 +08:00   1
建议继续学 Scala 3 ,水很深。什么 Akka, Cats-Effect ,ZIO ,Refined 都摸一遍,工作中也用的上,技术深度也足够了
timothyye
    46
timothyye  
   2022-07-06 21:45:12 +08:00 via Android
都学,技多不压身
Jet
    47
Jet  
   2022-07-06 21:53:19 +08:00
Python 还不如学 bash
jones2000
    48
jones2000  
   2022-07-06 22:05:54 +08:00
已经会了一门语言,把大学里面的 高等数学,离散数学,概率论,编译原理等课程在好好看看, 基础是最重要的。编程最后看的还是数学和行业经验。
233373
    49
233373  
   2022-07-06 23:09:55 +08:00
@shigure0 慢慢来呗,时间久了就好了
Evilk
    50
Evilk  
   2022-07-06 23:22:01 +08:00
建议学 PHP
Dogtler
    51
Dogtler  
   2022-07-06 23:47:50 +08:00
@shigure00 作为后端我也这么觉得,css 真的太不合逻辑了。
fgwmlhdkkkw
    52
fgwmlhdkkkw  
   2022-07-06 23:56:08 +08:00
go 不是上手就来……
dcoder
    53
dcoder  
   2022-07-07 00:32:54 +08:00
当然写 python, go 的话不是领工资, 自己写相对比较痛苦
lanlanye
    54
lanlanye  
   2022-07-07 02:55:30 +08:00
你本身会 Java 的话,学 Python 好些吧?再学一门静态类型的语言感觉没必要,而且我觉得 Go 社区还需要再积累几年。
dcsuibian
    55
dcsuibian  
   2022-07-07 03:29:02 +08:00   1
/t/864138 ,2022 年是 Javascript 连续第十年成为最常用的编程语言。

我主 Java ,第二语言选 js 。这样自己就能开发 web 应用了,甚至是小程序、套壳 app 、Electron 。(虽然我现在越来越喜欢原生应用了)
只能说 CSS 是块硬骨头,必须得啃、反复地啃,推荐《精通 CSS 》。

Python 不建议(我学得比 js 还早,现在已经彻底不用了),除非你想搞机器学习,否则 Nodejs 很多地方可以替代了。
Python 常见应用爬虫,本质就是 http 请求解析,js 也能做,而且做得更好,比如网页需要运行脚本生成 DOM ,甚至还有无头浏览器 Puppter 和 Playwright 这种大杀器
Python 有多线程,却因为 GIL 锁无法利用多核心,有 async 和 await 但生态拉跨。而 js 的 async/await 就很好用,异步编程思想深入骨髓。

Python 最大的优势是和 C/C++结合得很好,而且不像 js 的语言缺陷那么严重。
www5070504
    56
www5070504  
   2022-07-07 09:27:17 +08:00
go
wangyzj
    57
wangyzj  
   2022-07-07 09:34:40 +08:00
钝角
zone10
    58
zone10  
   2022-07-07 09:41:10 +08:00
精力够的话以都学, 硬要选一门的话建议是 Python. 如果你不是已经有一门主语言的情况下毫无疑问选 Go, 考虑到你已经有 Java 了, Go 跟 Java 的领域可以说几乎重合, 学了对你用处不大, 除非你打算转云原生方面, 这方面 Java 可能比 Go 差了点. 或者你觉得 Java 太卷想弯道超车也可以选 Go, 我觉得是非常有前景的.
misaka19000
    59
misaka19000  
   2022-07-07 10:00:51 +08:00
都学
jackliang007
    60
jackliang007  
   2022-07-07 10:01:36 +08:00
学 go 吧,
sun522198558
    61
sun522198558  
   2022-07-07 10:02:05 +08:00
c++
pkoukk
    62
pkoukk  
   2022-07-07 10:21:27 +08:00   1
rust 和 c#,这两才是能满足我理想中的编程语言
python 现在的大多数代码都写在了 zen of python 的反面
go 问就是大道至简,语法是简了,代码量哗哗往上涨
cmdOptionKana
    63
cmdOptionKana  
   2022-07-07 10:26:51 +08:00
@pkoukk 对,刚开始以为 zen of python 是夸 Python 具有这些特点,后来才发现,正因为写 Python 很容易写着写着就偏离 zen of python 的要求,所以才需要提醒程序员管好自己,靠个人能力(而不是靠语言特性)去实现 zen of python 。
anmu
    64
anmu  
   2022-07-07 10:34:06 +08:00
干什么学什么
nash
    65
nash  
   2022-07-07 10:37:04 +08:00
目前看好 go ,未来看好 rust
hujun528
    66
hujun528  
   2022-07-07 10:59:19 +08:00
c++
fiypig
    67
fiypig  
   2022-07-07 11:01:34 +08:00
go
XTTX
    68
XTTX  
   2022-07-07 11:06:25 +08:00
你应该先弄清楚学了用来做什么。纯粹娱乐不如找个爱好。是不是未来有工作需求。如果都不知道的话,不如学个前端
jheroy
    69
jheroy  
   2022-07-07 11:23:43 +08:00
学这些语言不如学些深入的东西, 操作系统原理, 编译原理这些学透. 语言这东西想换就换.
INCerry
    70
INCerry  
   2022-07-07 11:25:36 +08:00
C++ 或者 Rust 需要一层系统级的开发语言
Suddoo
    71
Suddoo  
   2022-07-07 11:39:07 +08:00 via iPhone
不如学汇编和微码吧
lujiaosama
    72
lujiaosama  
   2022-07-07 12:17:58 +08:00
学 rust 的人天天写工具么, 学了不用等于白费.
ox180
    73
ox180  
   2022-07-07 13:49:37 +08:00
看你喜欢哪一方面了,如果还是 CRUD ,意义不大。深度学习推荐 python 。
lscexpress
    74
lscexpress  
   2022-07-07 13:57:24 +08:00
我说个题外话吧,都不选。怎么开心怎么快乐就怎么过,可能你盲目学习一两个月感觉很充实了,但你要知道知识和技能是永远学不完的。需要用到什么再去学什么也不迟,真的。
吾生也有涯,而知也无涯。
Qds
    75
Qds  
   2022-07-07 14:03:37 +08:00   1
爬虫 深度学习 推荐 python 服务器应用 高性能处理 推荐 golang curd 程序员 哪个开发效率高就选哪个 推荐 C# 可以用全世界最好的 ide Visual Studio 简称 VS
duke807
    76
duke807  
   2022-07-07 14:13:13 +08:00 via Android
@ChangQin
@Moha
@lujiaosama

t/864629#r_11854823 的 10 ,可能是了炫耀吧

建先 python ,因 python 能干的事情更多,它更划算,了之後再考其它的,譬如往上走做前端 Javascript ,往下走可以基的 c
zhangchongjie
    77
zhangchongjie  
   2022-07-07 14:40:59 +08:00
我学 c++
yy77
    78
yy77  
   2022-07-07 14:44:58 +08:00
@shigure00 css 用 tailwind 这类的就行。直接写在 tag 上。
heng1025
    79
heng1025  
   2022-07-07 15:03:12 +08:00   1
多年菜鸟前端路过,现在写 css 基本没难度了(早些年的恶梦已经过去了),布局全部 flex, 应用开发直接上 tailwind 。
有需要再学,花点时间陪陪家人,养生,愉悦自己,可能比选择 go 还是 python 更香
cnwlei
    80
cnwlei  
   2022-07-07 15:36:16 +08:00
建议 go 我是 java 转 go 目前准备去干 web3 了
lizhisty
    81
lizhisty  
   2022-07-07 15:54:51 +08:00 via Android
@catsoul 学了写前端吗
Gottfool
    82
Gottfool  
   2022-07-07 15:55:56 +08:00 via Android
二选一选 go 。python 适合不打算深入的人
lzs5240
    83
lzs5240  
   2022-07-07 16:15:39 +08:00
Python 玩具自用
想要技能吃饭上班的话选 Go
placeholder
    84
placeholder  
   2022-07-07 16:19:34 +08:00
当然是 python 和 go 啦
catsoul
    85
catsoul  
   2022-07-07 16:19:36 +08:00
@lizhisty 嗯,学了卷前端
encro
    86
encro  
   2022-07-07 16:24:36 +08:00
@heng1025
@yy77

为什么你们不用 windcss 和 unocss?
encro
    87
encro  
   2022-07-07 16:24:51 +08:00
windicss
xiaoriri666
    88
xiaoriri666  
   2022-07-07 16:48:43 +08:00
PHP
ZACHM
    89
ZACHM  
   2022-07-07 16:50:21 +08:00
我也是一直有在学一门语言的需求,可惜工作中实在用到的场景太少,不经常用的话学了就忘。。。
ErwinCheung
    90
ErwinCheung  
   2022-07-07 16:51:03 +08:00
rust ,正在学习中,推荐
zyy314680012
    91
zyy314680012  
   2022-07-07 17:59:04 +08:00 via Android
面向工作就 go 平时自己用就 python 做点小东西确实方便 什么库都有
flynaj
    92
flynaj  
   2022-07-08 02:08:45 +08:00 via Android
Python 那种缩进相当蛋疼。
heng1025
    93
heng1025  
   2022-07-08 10:09:06 +08:00
@encro 都用,看心情吧,差不多的东西
Moha
    94
Moha  
   2022-07-08 10:11:59 +08:00
@duke807 好的,谢谢大佬
HB9527
    95
HB9527  
   2022-07-08 15:25:13 +08:00
RUST
zagfai
    96
zagfai  
   2022-07-08 18:35:26 +08:00
用熟了 python 再也不想用其他语言。。。。。。 开发效率那真是高,我以前团队经验是人力消耗是 go 的 30% 40%左右
zagfai
    97
zagfai  
   2022-07-08 18:36:48 +08:00
当然性能也拉跨,以前 py27 的时候,我们大项目的总体效率 go 用的计算资源是 py 的 20%左右,现在 py3 应该会好点
xzsljc
    98
xzsljc  
   2022-07-14 17:32:35 +08:00
储备技能用于转行:选 go
用来做玩具:选 python
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3000 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 29ms UTC 12:07 PVG 20:07 LAX 05:07 JFK 08:07
Do have faith in what you're doing.
ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86