• 请不要在回答技术问题时复制粘贴 AI 生成的内容
kvkboy
V2EX  ›  程序员

Java 程序员想发展第二语言, Python 、Go、JavaScript 改如何选择

  •  1
     
  •   kvkboy · Sep 4, 2020 · 13626 views
    This topic created in 2256 days ago, the information mentioned may be changed or developed.

    虽然大家都说 Java 是个又臭又长由啰嗦的语言,但是却符合我的性子,虽然麻烦但是一字一句的有迹可循

    选了这三种语言,目的就是为了感受编程语言的新世界,发出"这都可以?"的感叹

    也不是纯粹是为了好玩才学第二语言,第二语言要求能对生涯 (工作 /程序员) 有益

    不要跟我说 全都要!

    过几年说不定估计再发一贴,怎么发展第三语言

    Supplement 1  ·  Sep 4, 2020
    谢谢大家解答啊,Java 还没到尚可的程度(或者说 Java 要到尚可的水平也挺难了)。现在咨询这个只不过是稳一手,提前一波,多谢各位老哥

    都是很宝贵的建议

    总结一下评论

    Go 首当其冲,理由除了 Go 本身,还因为是第二语言和第一语言相辅相成,1+1>2

    python 多数人不建议

    kotlin 也很推荐,三天上手一周熟悉,成本低见效快

    scala,ruby,rust 都有推荐(不过个人水平还没高到有场景让我使用这些)

    JS/TS 看具体方向
    110 replies  •  2023-12-28 11:18:34 +08:00
    1  2  
    ❮ ❯
    CoderGeek
    CoderGeek
    Sep 4, 2020
    1
    js ? go
    darknoll
    darknoll
    Sep 4, 2020
    2
    都学吧,各有各的好
    ai8724968
    ai8724968
    Sep 4, 2020
    3
    kotlin 用了就回不去 Java 了,一天上手,相互兼容。
    suzhenyu
    suzhenyu
    Sep 4, 2020❤️1
    4
    之前看过类似的文章,文中推荐第二语言最好选个与第一语言差别大一些的。比如第一语言是静态语言,第二语言就推荐动态语言。
    按照这个逻辑,保留 Python 、JavaScript 。这两个选的话,如果你不是想学人工智能方面的话,个人感觉 JavaScript 更好一些吧。
    Rwing
    Rwing
    Sep 4, 2020
    5
    难道不是 C#?
    cccp2020
    cccp2020
    Sep 4, 2020
    6
    看你面向兴趣还是面向市场需要了,真为了发展的话,打好基础才是坠吼的
    ruyuejun
    ruyuejun
    Sep 4, 2020
    7
    本命 Java,Node/Go/Python 都有过接触。Python 实在是提不起兴趣,写写小脚本还行。后来接触了 Node 与 TypeScript,小脚本的书写也告别了 Python,所以 Python 基本从我这里告别了。最后学了 Go,怎么说呢.....真香....
    这是我的心血 Go 总结:
    https://github.com/overnote/over-golang
    Node 怎么说呢,如果不想了解下前端,还是算了,因为 node 的大部分应用都是给前端做开发环境。当然如果有兴趣看,https://github.com/overnote/over-javascript 里 Node 部分的基础、web 开发、原理三部分都是完整的
    ruyuejun
    ruyuejun
    Sep 4, 2020❤️1
    8
    上面只是单纯的语言偏好,没有考虑到题主说的职场发展什么的。
    我觉得如果是要了解系统整体架构,深入服务端领域,那么 Go 的并发模型,以及一大堆云原生组件是值得学习的。
    如果是要走全栈方向,做个 Web 开发大师,Node 也是不错的选择。
    不过楼上有些朋友也说了,无论怎么选语言,都不存在非常大的收益,最大的收益永远是:算法 /网络 /系统三巨头
    wnanbei
    wnanbei
    Sep 4, 2020
    9
    Go 跟 JAVA 太重叠了感觉,还是选个能互相搭配的吧
    kvkboy
    kvkboy
    OP
    Sep 4, 2020
    10
    @ruyuejun 多谢,已 star !以后学 Go 就着落了。

    我也对 python 没特别大的兴趣,相比之下其实我更倾向于 Go 和 Js 。
    说实话,我对万物起源 Js 更有兴趣,感觉它是啥都能做,场景实在是很丰富,被网上各种信息迷了眼,但是我不是前端,所以对于 JS 的话就是兴趣>发展。

    Go 的话就是反过来,发展>兴趣,这个能对服务端方面有新的认识,不过也是我对 Go 了解不够发现不了它的闪光点

    这可能就是需要选择吧(叹气)
    Darain
    Darain
    Sep 4, 2020
    11
    不建议学 go, 学了之后就完全不想写 Java 了
    onevcat
    onevcat
    Sep 4, 2020❤️1
    12
    工业级的语言会一种就好了。要学就学一些能够当作爱好的... Haskell,OCaml,PureScript,Crystal 这些其实都不错..
    raincode
    raincode
    Sep 4, 2020
    13
    Go,因为其他不会使你有"这都可以"的感叹
    Vegetable
    Vegetable
    Sep 4, 2020❤️4
    14
    这三个一起学,也比你当初学 java 快,不用纠结。
    python:这么方便!
    Go:就这?
    JavaScript:什么玩意?
    guanhui07
    guanhui07
    Sep 4, 2020
    15
    js
    hwdef
    hwdef
    Sep 4, 2020
    16
    rust 吧,,还是要学一些其他领域的,,,rust,python,haskell 选一个。
    ren2881971
    ren2881971
    Sep 4, 2020
    17
    rust
    Huelse
    Huelse
    Sep 4, 2020
    18
    rust 和 python 必学
    lavvrence
    lavvrence
    Sep 4, 2020
    19
    TypeScript 。 对于 Java 程序员, 不建议学 JS, 直接 TS 。
    wtsamuel
    wtsamuel
    Sep 4, 2020
    20
    python 必学。
    学别的语言话,要看你要做什么
    coderxy
    coderxy
    Sep 4, 2020
    21
    js 吧。 一个动态一个静态
    ConradG
    ConradG
    Sep 4, 2020
    22
    竟然没人推荐 ruby,干杂活一等一好手
    xinshoushanglu
    xinshoushanglu
    Sep 4, 2020
    23
    PHP,the best language !
    gowk
    gowk
    Sep 4, 2020 via Android
    24
    @Darain 这波 Go 吹的很舒服
    c2const
    c2const
    Sep 4, 2020 via iPhone
    25
    选 c 语言+汇编
    namelosw
    namelosw
    Sep 4, 2020 via iPhone
    26
    你要是追求"这都可以?"的效果,建议尝试 Common Lisp / Prolog / Idris
    CEBBCAT
    CEBBCAT
    Sep 4, 2020 via Android
    27
    我是写 Go 的,工作中会用到 Shell+Python 。

    这个帖子给了我一种新的感觉,我之前还以为人人都会一点 Python 呢……

    要不还是学学 Python 吧,写写脚本处理数据挺方便的
    CosimoZi
    CosimoZi
    Sep 4, 2020
    28
    scala
    oaix
    oaix
    Sep 4, 2020
    29
    因为追求"这都可以?"的效果, 所以首先排除 go
    sty
    sty
    Sep 4, 2020
    30
    花一礼拜学 kotlin
    laidu
    laidu
    Sep 4, 2020 via Android
    31
    gogogo
    Takamine
    Takamine
    Sep 4, 2020 via Android
    32
    三个都学了再对比感受一下不香吗。
    这几个语言的入门基础学习成本都并不高。
    chaleaoch
    chaleaoch
    Sep 4, 2020
    33
    Go/ JavaScript.
    看具体情况.
    EyreYoung
    EyreYoung
    Sep 4, 2020
    34
    python 以前听信什么人生苦短啥的,实际上感觉根本不方便啊,只是看起来代码量少了而已,一个变量在 ide 里也不知道是什么类型,哪来的,全靠名字猜,读起来贼费劲。还不如写得全一点
    DeWhite
    DeWhite
    Sep 4, 2020
    35
    磨透一个,其他转型就白给一样。
    xe2vherd
    xe2vherd
    Sep 4, 2020
    36
    熟悉了上面三种的任何一个,你都会想 艹,java 怎么这么啰嗦。
    kingofzihua
    kingofzihua
    Sep 4, 2020
    37
    为啥不去学 C 或者是 C++ 之类的,java 本身就不错了,学的杂可不是啥好的事
    Kamiyu0087
    Kamiyu0087
    Sep 4, 2020
    38
    不考虑一下 Kotlin ?
    3 天上手一个礼拜熟练
    bz5314520
    bz5314520
    Sep 4, 2020
    39
    java 玩的咋样了?
    meteor957
    meteor957
    Sep 4, 2020
    40
    首先排除 Python 实用价值一般
    jones2000
    jones2000
    Sep 4, 2020❤️1
    41
    第 2,第 3 语言应该为你第一语言服务的, 否则没有用处,就跟玩游戏分配属性一样,主要加 1 个主属性,其他属性分配的点都是辅助主属性, 否则就练废了。
    VoidChen
    VoidChen
    Sep 4, 2020
    42
    java 必学 scala 。讲道理我现在用过 java 、scala 、python 、c#,普通开发不用高级特性的话,其实也都只是为逻辑服务而已。。
    HENQIGUAI
    HENQIGUAI
    Sep 4, 2020
    43
    《七周七语言》
    tikazyq
    tikazyq
    Sep 4, 2020
    44
    成年人不做选择,都要
    xnotepad
    xnotepad
    Sep 4, 2020
    45
    你要有迹可寻的话,还是选静态吧。
    fly22109
    fly22109
    Sep 4, 2020
    46
    为什么没人推荐 autohotkey
    sssooonnnggg
    sssooonnnggg
    Sep 4, 2020
    47
    不考虑下 cpp 嘛
    m0mo
    m0mo
    Sep 4, 2020
    48
    去看下 kotlin 上手很快的.熟悉之后能用 kt 的地方坚决不 java
    LICOEVE
    LICOEVE
    Sep 4, 2020
    49
    不建议学 go, 学了之后就完全不想写 Java 了
    ligiggy
    ligiggy
    Sep 4, 2020
    50
    C 艹
    encounter2017
    encounter2017
    Sep 4, 2020
    51
    Scala/TypeScript/Rust 挑一个呗
    yuhangch
    yuhangch
    Sep 4, 2020
    52
    @VoidChen
    行业一个挺厉害的轮子是 scala 写的,想简单了解一下语法看看代码,
    关键字太多了,直接劝退。。。
    jin7
    jin7
    Sep 4, 2020
    53
    都要学....
    mxT52CRuqR6o5
    mxT52CRuqR6o5
    Sep 4, 2020
    54
    要学的话应该学点不一样的吧,我觉得 python/ruby 这种可能好些
    Java 程序员学 kotlin 这种感觉根本就算不上是第二语言
    zhengdai1990
    zhengdai1990
    Sep 4, 2020
    55
    选 go 吧
    QingXuJiaZhi
    QingXuJiaZhi
    Sep 4, 2020❤️1
    56
    很容易选,你只要问自己一个问题即可:对前端有没有兴趣?有就 JS,没有就 Go 。
    xuqd
    xuqd
    Sep 4, 2020
    57
    Scala 吧,回感觉很有意思
    sudoy
    sudoy
    Sep 4, 2020
    58
    借个楼: 请问 go 有什么好的桌面库吗?就是可以做漂亮的桌面程序 GUI
    fhsan
    fhsan
    Sep 4, 2020
    59
    为什么不全栈呢
    QingXuJiaZhi
    QingXuJiaZhi
    Sep 4, 2020❤️1
    60
    @sudoy 没有,目前跨平台桌面 GUI 比较易用、比较漂亮的就 Qt 和 Electron,Qt 要做好看难度还稍大一点,而且 Qt 有 license 问题。因此 Electron 才会在桌面 GUI 这一块异军突起。
    sudoy
    sudoy
    Sep 4, 2020❤️1
    61
    我个人觉得学当下流行的语言是个不错的选择,理由是用的人多工具也越多,不管是个人兴趣还是工作上都更容易找到现成的库可以用。比如我想对接某个股票接口,发现提供的现成 SDK 只有 python,Java 。比如工作上我需要对接某个快递公司的 API,提供的 SDK 只有 php,python,java 。当然这只是从这个角度分析,具体要看你自己的需求
    QingXuJiaZhi
    QingXuJiaZhi
    Sep 4, 2020
    62
    @sudoy 如果面向市场,做 GUI 只能放弃 Go 了。如果是自己做小项目,可以考虑走 web 路线,Go 开本地服务器做后端,通过 localhost 访问前端页面,这样做还有个有点,如果有树莓派或者 VPS 之类的,可以直接变成网站 24 小时手机电脑都可以访问自己的应用,还省了做 app 。
    charlie21
    charlie21
    Sep 4, 2020
    63
    会几种语言的人感觉也没咋地
    但是会写网站 + 桌面软件 + 手机软件的人,就是复合型人才了。看你关注的问题是什么了

    没几个人会对 ‘研究茴字有几种写法’ 有兴趣
    sudoy
    sudoy
    Sep 4, 2020
    64
    @cmdOptionKana 谢谢解答!我现在主要语言就是 python,除了桌面 GUI 这块不大满意之外,别的地方都够用了。另外有点想学 GO,但是好像没有什么特别吸引我的地方
    Victor69
    Victor69
    Sep 4, 2020 via iPhone
    65
    试试 ruby ?
    QingXuJiaZhi
    QingXuJiaZhi
    Sep 4, 2020❤️1
    66
    @sudoy pyqt 还蛮好玩的。如果不考虑工作,个人使用 Go 比 Python 优势也不多,就是静态语言 debug 和重构会稍稍方便一点,运行效率高一点,部署方便一点,好像就是这几方面稍稍有点优势了吧,别的没什么了。
    Leonard
    Leonard
    Sep 4, 2020
    67
    Elixir
    no1xsyzy
    no1xsyzy
    Sep 4, 2020
    68
    @raincode 看 JS:这什么语法?这都可以抄?
    至于 Python:这显然可以…… 什么?不行? (因为太多地方强调符合直觉,写多了就感觉显然可以的就是可以的,突然某个地方不行反而会被惊到)

    @jones2000 炸弹人 25 级转物理又不是不行(
    现实不是游戏,专一型人才会面临结构性失业。游戏有人做平衡还每个版本都有下水道职业,现实就真没人做平衡了,下个版本你没了怎么办?
    xiaoxinshiwo
    xiaoxinshiwo
    Sep 4, 2020
    69
    python,能提高生产效率,推荐
    Merlini
    Merlini
    Sep 4, 2020 via Android
    70
    会 python 和 ts,下一个静态语言推荐学什么?
    CaffreySun
    CaffreySun
    Sep 4, 2020
    71
    兄弟,来 swift 看看呗,
    强大的协议、安全的类型、多编程范式支持,
    总之这门语言香的很,可惜难以出圈。
    waltcow
    waltcow
    Sep 4, 2020
    72
    ts
    kannbala
    kannbala
    Sep 4, 2020 via iPhone
    73
    不知道为啥有人学了 go 不想写 java,我是反过来,学了 go 还是觉得 java 写业务舒服。
    Wuxj
    Wuxj
    Sep 4, 2020
    74
    如果是我的话就是 js + html + css 前后端都能搞,以后年纪大了去送外卖了 晚上有时间还可以接接外包:)
    newmlp
    newmlp
    Sep 4, 2020
    75
    C 艹,天花板无限高,够你玩一辈子了
    windyboy
    windyboy
    Sep 4, 2020
    76
    kotlin 看着容易,写起来不易
    wuwukai007
    wuwukai007
    Sep 4, 2020
    77
    用过 a,b = b,a 和 列表推导式后,难道不会对 python 产生点兴趣吗?
    TypeError
    TypeError
    Sep 4, 2020 via Android
    78
    Python 不比 js 好多了,起码是强类型,也不需要各种编译

    反正前端学学 js 还行,nodejs 后端我是提不起来兴趣
    Jooooooooo
    Jooooooooo
    Sep 4, 2020
    79
    真不如多学点操作系统, 网络来的实在
    Huelse
    Huelse
    Sep 4, 2020
    80
    那些不推荐 python 的是什么心态,只是作为了解使用,python 必学啊,自动化和脚本等等简直方便到家
    v7offJ3MsdbC1IhU
    v7offJ3MsdbC1IhU
    Sep 4, 2020 via iPhone
    81
    才三选一啊,做移动端的,我还不是 oc,swift,dart,js 都学了……
    Cooky
    Cooky
    Sep 4, 2020 via Android
    82
    Python 标准库方面比 Java 强太多
    xjqxz2
    xjqxz2
    Sep 4, 2020
    83
    Go & PHP 还想转 Java 诶...
    taxiaohaohhh
    taxiaohaohhh
    Sep 4, 2020 via Android
    84
    js 动静搭配
    ming7435
    ming7435
    Sep 4, 2020
    85
    @TypeError python 强类型???
    TypeError
    TypeError
    Sep 4, 2020 via Android
    86
    @ming7435 不懂就去谷歌
    levelworm
    levelworm
    Sep 4, 2020 via Android
    87
    我觉得还是看做啥,语言只是工具,对于诸位程序员来说,学习第二语言应该本身不是难事,甚至都可以直接看文档学。
    jones2000
    jones2000
    Sep 4, 2020
    88
    @no1xsyzy 编程这个东西,最后也就是一个设计的思路, 跟语言没什么关系,流程图画出来, 用什么语言都可以。java/c++ 有一门语言精通了,换其他语言没什么难度。

    我是 c++开发的, 我开源过一个 js 金融图形库+策略引擎( https://github.com/jones2000/HQChart ), 这个是直接把 c++版本移植到 js,Py 上, 只要看下 js,py 语法就可以了。 其他的就根据 c++的设计思路移植就可以了。
    qiumaoyuan
    qiumaoyuan
    Sep 4, 2020
    89
    ["a", "bc", "def"].find{|n| n.size > 2 }

    有吸引力不?
    magicZ
    magicZ
    Sep 4, 2020
    90
    公司主力前端走了之后,突然感觉我可以搞搞, 目前已经在学 JS 了, java 是很好,但我想开拓一个新的方向.
    ZRS
    ZRS
    Sep 4, 2020
    91
    最近工作所迫在写 JS,全程感觉这 tm 是什么 jb 缝合怪
    Resource
    Resource
    Sep 5, 2020
    92
    上面大佬说一天上手 kotlin 的还行
    lxml
    lxml
    Sep 5, 2020
    93
    @Resource 10 分钟速读算法导论?
    keenkiller
    keenkiller
    Sep 5, 2020 via Android❤️2
    94
    首当其冲用错了
    ClydeX
    ClydeX
    Sep 5, 2020
    95
    @charlie21 正解
    F7EXi3C25zGhO40b
    F7EXi3C25zGhO40b
    Sep 5, 2020
    96
    用了两年 Java 以后,换了家公司分别在两个项目上用了 Scala 和 Kotlin 几个月。

    个人感觉是,单纯自学新的语言,没有时间场景,也不会有太大的学习感触。

    不如学一些 Haskell 、Erlang 这种有很多新奇概念的语言,拓展一下视野。。。
    hdfg159
    hdfg159
    Sep 5, 2020 via Android
    97
    最快是选择 groovy,哈哈哈哈哈
    reus
    reus
    Sep 6, 2020 via Android
    98
    @ming7435 连 python 是强类型都不知道,水平地下到这个地步,你怎么有脸参与讨论的?
    thetbw
    thetbw
    Sep 6, 2020
    99
    js 肯定会用到,没什么学不学的吧,不过 js 用起来贼难受
    janxin
    janxin
    Sep 6, 2020
    100
    翻页,ts 吧
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1606 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 191ms · UTC 09:08 · PVG 17:08 · LAX 01:08 · JFK 04:08
    ♥ Do have faith in what you're doing.