WXB506
V2EX  ›  问与答

请大家聊聊自己熟悉的编程语言的优缺点,各种语言都可以,不喜勿喷,拜托

  •  
  •   WXB506 · Jun 1, 2015 · 4370 views
    This topic created in 4183 days ago, the information mentioned may be changed or developed.
    20 replies  •  2015-08-14 11:32:44 +08:00
    Septembers
    Septembers
    Jun 1, 2015
    1
    因人而异
    lbp0200
    lbp0200
    Jun 1, 2015
    2
    语言这东西
    运行速度快的,如c/c++,java,啰嗦,开发慢。
    开发快的,如ruby,运行速度慢。
    性能就是money,看你要为程序的某个特性付出多少代价。——源自斯坦福算法公开课,网易公开课上有。
    WeeH9T
    WeeH9T
    Jun 1, 2015
    3
    我来添一把火

    PHP是世界上最好的语言
    angkec
    angkec
    Jun 1, 2015
    4
    @hambut 我来喷楼上 大家把气氛搞起来~
    czheo
    czheo
    Jun 1, 2015
    5
    python,可读性强,最接近程序员思维方式。
    ruby,sugar太多,甜到腻。
    c,不会你好意思自称程序员?
    javascript,设计有够糟糕。
    HTML, CSS,SQL,你好意思说这些是编程语言?
    FrankFang128
    FrankFang128
    Jun 1, 2015 via Android
    6
    JS 设计可一点也不糟糕。只是不完备。
    zhgg0
    zhgg0
    Jun 1, 2015
    7
    PHP是世界上最好的语言
    czheo
    czheo
    Jun 1, 2015
    8
    @FrankFang128
    你觉得行尾要写分号么?不写我也能执行哦,出问题了你自己负责哦。
    你能用js写一个有自信的继承的best practice么?我反正是没有。
    异步是很帅,我能偶尔同步一下么?滚出,不行。
    FrankFang128
    FrankFang128
    Jun 1, 2015 via Android
    9
    @czheo 没有编译的语言出问题不都是自己负责吗。
    JS继承不走Java那一套,直接操作 prototype 一点也不麻烦。
    为何要同步?单线程同步不起。
    Hyperion
    Hyperion
    Jun 1, 2015 via Android
    10
    @czheo 一部分是历史原因,还有一部分是用的人水平太差。
    linxy
    linxy
    Jun 1, 2015
    11
    C++嘛,真正会的人太少。大多数人是在当c with class写。(其实我也是
    入门容易精通难…
    坑嘛……多的好几本书都没讲完啊
    xiaosun
    xiaosun
    Jun 1, 2015 via iPad
    12
    见过好多类似帖子,v2ex果然是web前后端以及app开发的人多,其他的人很少见到
    wohenyingyu01
    wohenyingyu01
    Jun 2, 2015
    13
    @czheo 不会c的程序员路过,完全没学过
    jacob
    jacob
    Jun 2, 2015
    14
    @Hyperion javascript在大牛和菜鸟手里就是2种语言
    czheo
    czheo
    Jun 2, 2015
    15
    @FrankFang128
    分号问题你看这个有没有够恶心。http://stackoverflow.com/questions/444080/do-you-recommend-using-semicolons-after-every-statement-in-javascript/1169596#1169596

    php也是单线程啊,和线程无关。

    不麻烦?你去看看jQuery.extend的源码有几行。
    FrankFang128
    FrankFang128
    Jun 2, 2015
    16
    @czheo 分号的坑不足三个,也算门槛吧,你可以选择全部加分号啊,没人拦着。
    var a = 1; a++ 。这不就是同步的吗?实际上所有的方法都有同步版本,只是IO不推荐同步,所以调用起来不那么方便。
    jQuery.extend 的核心代码也就这么几行:
    for ( ; i < length; i++ ) {


    if ( (options = arguments[ i ]) != null ) {


    for ( name in options ) {
    src = target[ name ];
    copy = options[ name ];


    if ( target === copy ) {
    continue;
    }


    if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {
    if ( copyIsArray ) {
    copyIsArray = false;
    clone = src && jQuery.isArray(src) ? src : [];

    } else {
    clone = src && jQuery.isPlainObject(src) ? src : {};
    }


    target[ name ] = jQuery.extend( deep, clone, copy );


    } else if ( copy !== undefined ) {
    target[ name ] = copy;
    }
    }
    }
    }
    其大部分都是在处理「对调用者的友好性」和错误处理,所以没什么好喷的,加上现在 ES6 出了 Object.create,友好性又大大加强了。
    xlrtx
    xlrtx
    Jun 2, 2015
    17
    看了IIFE之后感觉js和c一样美, 靠事件触发多线程, 很独特的语言啊
    xlrtx
    xlrtx
    Jun 2, 2015
    18
    @xlrtx 是单线程的
    qw7692336
    qw7692336
    Aug 14, 2015
    19
    @lbp0200 开发效率也是money
    qw7692336
    qw7692336
    Aug 14, 2015
    20
    @xiaosun 因为v2ex的人大多数喜欢自己创造面向用户的作品
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2344 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 03:49 · PVG 11:49 · LAX 19:49 · JFK 22:49
    ♥ Do have faith in what you're doing.