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

闲下来想学习一门接近完美的语言,请问该学什么好呢?

  •  6
     
  •   Kongtou · Apr 7, 2018 · 31487 views
    This topic created in 2989 days ago, the information mentioned may be changed or developed.
    按排名优先:
    1.语法表现力强
    2.性能好
    3.有好的 ide
    4.生态繁荣
    249 replies    2018-12-15 22:06:01 +08:00
    1  2  3  
    yougezai
        101
    yougezai  
       Apr 8, 2018
    说 Csharp 需要勇气,除了生态稍微差一丢丢,什么都比较完美。 关键是跨平台,有强大的厂商支持
    hnbcinfo
        102
    hnbcinfo  
       Apr 8, 2018
    按你的要求,那就.net core 平台下的 C#吧。
    Itoktsnhc
        103
    Itoktsnhc  
       Apr 8, 2018   ❤️ 2
    C# or F# ?
    firedsxist0
        104
    firedsxist0  
       Apr 8, 2018   ❤️ 1
    看到“完美”二字,我就知道楼主是来引战的
    闲下来学的话,那就学说情话吧,哄女孩子这个技能闲下来可以学
    peinhu
        105
    peinhu  
       Apr 8, 2018   ❤️ 2
    C#除了找不到工作,其他没什么不好的,都满足你的要求😄
    sinver
        106
    sinver  
       Apr 8, 2018
    美式英语,中文...
    shenqi
        107
    shenqi  
       Apr 8, 2018
    粤语。
    skadi
        108
    skadi  
       Apr 8, 2018
    反正没提编译速度.那还是 cpp 吧.
    lulala2018
        109
    lulala2018  
       Apr 8, 2018
    c++
    lepig
        110
    lepig  
       Apr 8, 2018
    为什么没人推荐 Go 我刚入坑啊
    ioth
        111
    ioth  
       Apr 8, 2018
    梵语。
    fork
        112
    fork  
       Apr 8, 2018
    缺铜币了吧
    Shura
        113
    Shura  
       Apr 8, 2018   ❤️ 2
    学编译原理,然后造个前端小轮子,后端接 LLVM,比你无目的地学编程语言好玩很多。
    KgM4gLtF0shViDH3
        114
    KgM4gLtF0shViDH3  
       Apr 8, 2018
    炫技当然是 lisp
    zachgenius
        115
    zachgenius  
       Apr 8, 2018
    入坑 rust 吧
    brown001
        116
    brown001  
       Apr 8, 2018
    c# 除了一直说不好找工作之外,其他我觉得还行吧= = 哈哈哈哈
    HuangLibo
        117
    HuangLibo  
       Apr 8, 2018
    这个问题类似于: 我想去一家餐馆, 便宜, 好吃, 服务好.
    stzz
        118
    stzz  
       Apr 8, 2018
    C 井 typescript..
    学巨硬家的东西啥都好就是不赚钱😁
    lrz0lrz
        119
    lrz0lrz  
       Apr 8, 2018
    JS,完美根治楼主对“完美”的妄想
    kiss96803
        120
    kiss96803  
       Apr 8, 2018
    吸 吓 噗
    SmallZheng
        121
    SmallZheng  
       Apr 8, 2018
    rust
    tyrealgray
        122
    tyrealgray  
       Apr 8, 2018 via Android
    用 vs 写 c++ 啊
    retroxs
        123
    retroxs  
       Apr 8, 2018
    javascript
    dhssingle
        124
    dhssingle  
       Apr 8, 2018
    C#
    RubyJack
        125
    RubyJack  
       Apr 8, 2018
    看到 ide...那么就只好推荐 jvm 上的函数式语言了
    yuriko
        126
    yuriko  
       Apr 8, 2018
    我……我要投诉你引战……!
    ( JAVA 大法好,跑)
    kohos
        127
    kohos  
       Apr 8, 2018
    visual studio code 配合 javascript,简直完美(
    Kongtou
        128
    Kongtou  
    OP
       Apr 8, 2018 via Android
    @yuriko 怪我咯:p
    Devotion
        129
    Devotion  
       Apr 8, 2018
    c,c++,java,python,scala,bash 学完这些就够了。
    Kongtou
        130
    Kongtou  
    OP
       Apr 8, 2018 via Android   ❤️ 1
    @Shura 编译原理有什么意思,学正则表达式匹配吗
    ltcsky
        131
    ltcsky  
       Apr 8, 2018
    English...
    luoqeng
        132
    luoqeng  
       Apr 8, 2018
    scheme
    wingkou
        133
    wingkou  
       Apr 8, 2018 via Android
    看到楼主在#130 问 @ Shura 编译原理有什么意思,学正则表达式匹配吗?才发现楼主原来真的不是在引战的...
    AIDesign
        134
    AIDesign  
       Apr 8, 2018
    编程语言只是工具,每个人口味不同,喜欢的工具也不同。
    最近在 Arduino 上尝试了下 Forth 这个古老的语言,感觉到一股神秘的力量。
    Kongtou
        135
    Kongtou  
    OP
       Apr 8, 2018 via Android
    @wingkou 确实是很枯燥啊
    run2
        136
    run2  
       Apr 8, 2018
    我就是进来看第几楼出现 swift 的 都是个人体验的不同 哪可能有什么完美
    lbp0200
        137
    lbp0200  
       Apr 8, 2018
    PHP
    funlee
        138
    funlee  
       Apr 8, 2018
    不是自己打造的,何来完美;
    来打造完美的 JS 吧!
    ytf4425
        139
    ytf4425  
       Apr 8, 2018
    @qdwang 你这是提前否定了 PHP 和 Python 了吗 2333
    Elephant696
        140
    Elephant696  
       Apr 8, 2018
    JavaScript


    话说,在我眼里詹姆斯是篮球之神,不知道各位怎么看(*^__^*)
    stackexplode
        141
    stackexplode  
       Apr 8, 2018
    C++ 11 以上,足够好用
    aminic
        142
    aminic  
       Apr 8, 2018 via Android
    期货锈蚀
    YanSep
        143
    YanSep  
       Apr 8, 2018 via Android
    什么是完美?
    ben1024
        144
    ben1024  
       Apr 8, 2018
    js or php
    lostpupil
        145
    lostpupil  
       Apr 8, 2018
    (1 2 3 4) => clojure
    lostpupil
        146
    lostpupil  
       Apr 8, 2018
    Lisp 语系的表现力不多说
    性能也很好
    IDEA Cursive
    Java 大兄弟的包你随便用
    contmonad
        147
    contmonad  
       Apr 8, 2018 via iPhone
    @lostpupil 正版 Cursive ?
    hbsfxlz
        148
    hbsfxlz  
       Apr 8, 2018
    print('hello world')
    fghjghf
        149
    fghjghf  
       Apr 8, 2018
    现在的高级语言,都是图灵式的语言。没完美的。除非量子机出现了,有 AI 的语言
    FreshOldMan
        150
    FreshOldMan  
       Apr 8, 2018
    Swift
    yanzixuan
        151
    yanzixuan  
       Apr 8, 2018
    @AIDesign 我还保留着当年 opencores 的能执行 forth 语言的 cpu 源代码。。。
    Norie
        152
    Norie  
       Apr 8, 2018
    喃喃自语
    assad
        153
    assad  
       Apr 8, 2018
    哈哈,大家都好幽默啊
    kotokz
        154
    kotokz  
       Apr 8, 2018
    学了这么多语言,rust 给我的收获最大,也是我最愿意使用的语言
    如果是为了学东西,一定要考虑考虑 rust
    GavinGuo
        155
    GavinGuo  
       Apr 8, 2018
    当然是 JS,又能前端,又能后端,还能写 app
    jayan2358
        156
    jayan2358  
       Apr 8, 2018
    C++
    但是不好学,其实当你学会一门只后,发现入门别的语言其实也没那么难
    maxco292
        157
    maxco292  
       Apr 8, 2018
    Rust or Haskell
    zhouqianghfut
        158
    zhouqianghfut  
       Apr 8, 2018
    我和楼主有一样的想法,想了五六年了,我还没选好语言。这五六年里因生活所迫,倒是 c/c++/lua/python/sql 都 TM 写过不少,java/.net 也少量尝试过。
    STRRL
        159
    STRRL  
       Apr 8, 2018 via Android
    cpp
    Kongtou
        160
    Kongtou  
    OP
       Apr 8, 2018 via Android
    @kotokz 好多推荐 rust 啊
    Kongtou
        161
    Kongtou  
    OP
       Apr 8, 2018 via Android   ❤️ 1
    @zhouqianghfut 老哥跟我都是热爱编程的人
    manzhiyong
        162
    manzhiyong  
       Apr 8, 2018
    屁眼
    zhouqianghfut
        163
    zhouqianghfut  
       Apr 8, 2018   ❤️ 1
    @Kongtou 没,我们就是懒人,想要一劳永逸,哈哈哈哈哈
    Gja5kx2zjf92LLin
        164
    Gja5kx2zjf92LLin  
       Apr 8, 2018
    C# 就是不好找工作
    gabon
        165
    gabon  
       Apr 8, 2018 via Android   ❤️ 1
    Scala
    strawhat7
        166
    strawhat7  
       Apr 8, 2018
    学高等数学和英语
    hzw94
        167
    hzw94  
       Apr 8, 2018
    政治
    Fuzz
        168
    Fuzz  
       Apr 8, 2018
    你可能需要学中文
    anjiannian
        169
    anjiannian  
       Apr 8, 2018
    我还以为是在说二外呢。。。
    IvanLi127
        170
    IvanLi127  
       Apr 8, 2018 via Android
    写 c#十分享受,就是生态。。。唉
    whoisghost
        171
    whoisghost  
       Apr 8, 2018
    @zhouqianghfut 我跟你一样,编程了六年了,那六年,都没一个语言让我写着舒服的,直到最后看到了 Golang, 才让我感觉编程的真正乐趣。
    seanan
        172
    seanan  
       Apr 8, 2018
    学过几种语言的程序员都应该会得出 C#最好的结论,但是前景不乐观。
    zhongjidalao
        173
    zhongjidalao  
       Apr 8, 2018
    PHP 是世界上最好的语言
    tghoul
        174
    tghoul  
       Apr 8, 2018 via Android
    前段时间看 stackoverflow 统计的老外最想学习的新语言语言 top1 是 kotlin。
    gimp
        175
    gimp  
       Apr 8, 2018
    Rust 学起来给人的感觉很不错
    abbatuu
        176
    abbatuu  
       Apr 8, 2018
    我咋觉得 希伯来语和俄罗斯语 不错
    Chingim
        177
    Chingim  
       Apr 8, 2018 via Android
    @gimp 我也想试试,但是工作用不上。平时能做哪些东西玩玩呢?毕竟这东西也适合做客户端...
    平时没产出的话怕维持不下去
    Chingim
        178
    Chingim  
       Apr 8, 2018 via Android
    @Chingim 毕竟这东西也适合做客户端...
    => 毕竟这东西也不适合做客户端...
    flowfire
        179
    flowfire  
       Apr 8, 2018   ❤️ 1
    Any application that can be written in JavaScript, will eventually be written in JavaScript.
    gowk
        180
    gowk  
       Apr 8, 2018 via Android
    了解了 Rust 的语法后,我就知道我永远不会再去碰这个东西,也许它符合某些人的口味。遇见 Go 才真正有一见倾心的感觉,Go 简洁却并不简单,时间将会证明 Go 的价值,不错,1.x 确实存在某些问题,但我相信 2.0 将如同凤凰涅槃,Time will tell.
    Yee11
        181
    Yee11  
       Apr 8, 2018
    当然是 Haskell
    jonechenug
        182
    jonechenug  
       Apr 8, 2018 via Android
    .Net core 下的 C#,又跨平台,而且现在只要一个 vs code 就能写了
    SummerWQM
        183
    SummerWQM  
       Apr 8, 2018
    golang 不谢
    wangxiaoaer
        184
    wangxiaoaer  
       Apr 8, 2018   ❤️ 3
    @lepig #110 因为 golang 的语法真的是一坨 xx。各种错误判断是一坨 xx。
    PythonAnswer
        185
    PythonAnswer  
       Apr 8, 2018 via iPhone
    最近在重学 vba 嘿嘿
    busfool
        186
    busfool  
       Apr 8, 2018
    王垠用 java c c++
    另外据说 JavaScript 和 python 也不错
    我个人误打误撞学了两次 c#
    mingyun
        187
    mingyun  
       Apr 8, 2018
    PHP 了解一下
    qiyuey
        188
    qiyuey  
       Apr 8, 2018
    C#,除了找不到工作
    intret
        189
    intret  
       Apr 8, 2018   ❤️ 2
    (我写的这个回复真是长长长...啊)

    我觉得新的语言值得学习,所谓的“完美”也是源于它们是新语言,能站在历史语言的肩膀上进行设计,是为了填过去各种语言出生时的不合理设计坑,有这些特点:

    1.开始是为提高某个平台的高效率开发而发明。
    2.抛弃一些旧语言为了兼容源码而做的各种升级、补丁。

    举我自己学习语言的例子,说说旧语言讨厌的地方(只讨论语言语法设计方面的问题,这段在乱扯):

    ① C 语言是多么简单,语言简单但是开发时好繁琐啊,竟然还有什么用结构体去模拟 C++ 类的做法,基于对象的编程但是它确是 Linux 内核开发、嵌入式开发的不二选择;

    ② C++ 语言这是一门从入门到放弃的语言。不过当年读大学时只研究它,发现熟悉 C++ 之后,再去学习 C#、Java 等语言时,从 C++ 那里学习到的面向对象、模板的概念对理解 C#、Java 语言有很大的帮助。但是 C++ 没有让人觉得甜的语法糖。

    举个例子,从网上复制的一个 C++遍历用法:

    C++ :

    for_each(iv.begin(), iv.end(), [b](int &x){cout<<(x + b)<<endl;}); // (1)

    遍历就遍历嘛,干嘛要详细说明从数组的 iv.begin() 到 iv.end() ,婆婆妈妈,数据结构遍历可是日常代码里面要写的。

    看看人家 Kotlin: http://kotlinlang.org/docs/reference/control-flow.html#for-loops

    ```
    for (item: Int in ints) {
    // ...
    }
    ```

    看看人家 Swift: http://wiki.jikexueyuan.com/project/swift/chapter2/05_Control_Flow.html#for_in_loops

    ```
    let names = ["Anna", "Alex", "Brian", "Jack"]
    for name in names {
    print("Hello, \(name)!")
    }
    ```

    每天有这种语法糖吃,真是甜蜜又高效还幸福...

    现实的情况是,每种语言都有它合适的位置,不过我想问的是,我有生之年还能看到某个领域的开发,被一种全新的更好的语言全部代替吗?历史是在演进的,用机器码,用汇编,用 C,用 C++ ... 那么写操作系统这个事情,能用一种全新的语言来重写吗?语言能变得高级,肯定也是因为编译器是一个智能的翻译员。

    3.解决某个平台上流行语言开发低效的历史问题。Kotlin 誓要在 Android 上替代 Java,Swift 誓要替代 Objective-C。
    4.跨平台。
    5.学了不吃亏,兴许以后也能因此找到工作呢。
    6.语法糖好吃,嗯,好吃 ...
    7.热度上升,得到好评。



    所以,我推荐学 Kotlin 或 Swift。

    # Kotlin 语言

    http://kotlinlang.org/docs/reference/basic-syntax.html

    有 Jetbrains 和 Google 两个牛逼公司支撑。 支持著名的 JVM,for Android、for Server Side、for JavaScript、for Native,学了根本不吃亏。

    # Swift 语言

    https://swift.org/documentation/#api-design-guidelines

    有 Apple 公司支撑。能开发 iOS app、macOS app、Server Side 程序。
    vinceguo
        190
    vinceguo  
       Apr 8, 2018 via Android
    @Devotion 正好都会
    xpresslink
        191
    xpresslink  
       Apr 8, 2018
    Common Lisp 了解一下
    patx
        192
    patx  
       Apr 8, 2018   ❤️ 1
    反过来想一下,如果有一门语言是完美的,现在还会有语言之争?
    jydeng
        193
    jydeng  
       Apr 9, 2018
    C#、JavaScript、TypeScript
    这不是我的技能树嘛
    agagega
        194
    agagega  
       Apr 9, 2018   ❤️ 1
    @intret
    C++ 也可以
    for (auto& i : iv) {
    cout << i + x << '\n';
    }
    crist
        195
    crist  
       Apr 9, 2018
    磁铁真火炏焱燚。。
    yongjing
        196
    yongjing  
       Apr 9, 2018
    这个话题不错,威力仅次于 php 是世界上最好的语言
    abscon
        197
    abscon  
       Apr 9, 2018 via iPhone
    @lepig 因为 Go 语法表现力弱
    abscon
        198
    abscon  
       Apr 9, 2018 via iPhone   ❤️ 1
    @Kongtou 栈溢网连续三年凭为程序员最爱语言。Rust 够独特,但不满足你说的这几个条件。而且就你开的这几个条件来看,你不适合学习 Rust
    abscon
        199
    abscon  
       Apr 9, 2018 via iPhone
    @gowk 没几个人因为语法而喜欢 Rust 的,是刚需。
    abscon
        200
    abscon  
       Apr 9, 2018 via iPhone
    @intret 你黑 C++举的那个 for_each 例子真的是奥特曼……
    都 8102 年了,C++11 range-based for loop 了解一下?
    再说这么一个语法糖没必要抬那么高吧?
    1  2  3  
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   999 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 313ms · UTC 18:54 · PVG 02:54 · LAX 11:54 · JFK 14:54
    ♥ Do have faith in what you're doing.