V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jiar
V2EX  ›  程序员

node.js、python、java、swift 的抉择

  •  
  •   jiar ·
    Jiar · 2016-03-23 20:52:50 +08:00 · 7704 次点击
    这是一个创建于 3170 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如果要你从 node.js 、 python 、 java 、 swift 中选一项作为你未来在后台编程方向上可长期发展的拿手技能。你会如何选择,说说看你的原因。

    57 条回复    2016-07-20 10:20:46 +08:00
    pathletboy
        1
    pathletboy  
       2016-03-23 20:56:48 +08:00
    改下题,我选 golang
    pupboss
        2
    pupboss  
       2016-03-23 20:59:08 +08:00
    钓鱼(广义的)
    jiar
        3
    jiar  
    OP
       2016-03-23 21:00:29 +08:00
    @pathletboy V2 无法修改...加上 golang ,你选这个的理由是什么呢?
    jiar
        4
    jiar  
    OP
       2016-03-23 21:00:50 +08:00
    @pupboss 一定要选一个呢?用于长期发展的
    zava
        5
    zava  
       2016-03-23 21:04:04 +08:00
    符合后台的,长期发展的,推荐 Java 或者 JVM 语言
    ixiaohei
        6
    ixiaohei  
       2016-03-23 21:04:53 +08:00   ❤️ 1
    能用 swift 搞后台的人,前面三个早就会用吧,另外高手不会局限一种语言开发的,感觉你还是在钓鱼
    cxbig
        7
    cxbig  
       2016-03-23 21:06:11 +08:00
    讲到长期发展,学的是处理问题的思路,而不是具体某个技术。追求的是“手中无剑,心中亦无剑”。
    kaichen
        8
    kaichen  
       2016-03-23 21:07:45 +08:00   ❤️ 2
    Java 社区非常成熟,各种处理复杂问题的工具都有,大公司的大业务后面都由它来支撑。基于 Java 的语法糖也很多,比如 Scala, Koltin, Clojure, Groovy 等等, Java 8 也加入了许多现代语言的特性来提高开发效率。

    Swift 起步晚但发展相当快,语言特性相当现代化,在 iOS / OSX 等苹果平台慢慢变成主流选择,社区里有不少人积极将其扩展到其他领域,比如 Web 开发,甚至是安卓开发。

    NodeJS 是这几年及其火爆的存在,各种前端工具都用它来构建,大部分场景下处理业务逻辑非常方便高效。

    综上考虑选择都学,这三个东西实际上也不冲突,一个是底层支撑,一个是前端,最后一个是原生客户端,掌握了就是全栈(我的理解里全栈不是那种写写 JavaScript 懂点 API 开发的弱鸡,而是能合理利用各种技术支撑各种业务需求的全能选手)。
    pathletboy
        9
    pathletboy  
       2016-03-23 21:14:02 +08:00
    @jiar 除了 swift , node.js python java 我都用来写过 3-5K 行的小项目,如 @cxbig 所说,长期发展学的是处理问题的思路,我选择 golang 的理由就是, golang 简单,能更好的表达我的思路,且很多问题能消灭在编译期。
    ldehai
        10
    ldehai  
       2016-03-23 21:17:01 +08:00
    @jiar 建议都学学, node.js 和 python 写写后台, java 写写 android , swift 搞搞 iOS 。全栈了,多好。
    jiar
        11
    jiar  
    OP
       2016-03-23 21:19:43 +08:00
    @ixiaohei 钓鱼...我只是替女朋友问下而已...
    jiar
        12
    jiar  
    OP
       2016-03-23 21:20:11 +08:00
    @cxbig 意境不要太高啊。。
    jiar
        13
    jiar  
    OP
       2016-03-23 21:20:35 +08:00
    @kaichen 嗯,感谢你的认真回复。
    jiar
        14
    jiar  
    OP
       2016-03-23 21:22:38 +08:00
    @ldehai 其实...除了 python 还没接触过,安卓早就会了,项目也有上架, iOS 项目更多,不过都是用 oc 写的, swift 再几天就看完了。 java 的后台,自己也有写着玩过。
    cxbig
        15
    cxbig  
       2016-03-23 21:25:58 +08:00
    @jiar 思路就是这样。
    选一个自己喜欢的语言上手,你列举的这些随便一个做好了都是生活无忧。
    就算几年后真会淘汰,以那个时候的工作经验,换个语言并不是难事。
    crab
        16
    crab  
       2016-03-23 21:43:27 +08:00
    怎么觉得会一门编程语言后看其他的语言入门也挺快的啊。
    fantasyczl
        17
    fantasyczl  
       2016-03-23 21:54:03 +08:00
    主 java, 辅 python
    pupboss
        18
    pupboss  
       2016-03-23 22:00:37 +08:00
    @jiar 反正我是除了 java 都能写点 = = 其实 java 也能写

    一定要选的话,选培训机构暂时没开课的,肯定没错~
    droiz
        19
    droiz  
       2016-03-23 22:34:12 +08:00
    swift ,已经对静态类型无爱了。
    charlie21
        20
    charlie21  
       2016-03-23 22:36:59 +08:00
    如果所有人都会 python , 但你不会,那么你是否会感到担心?
    如果所有人都会 java , 但你不会,那么你是否会感到担心?
    如果所有人都会 swift , 但你不会,那么你是否会感到担心?

    以上三个问题对我来说,答案都是 no
    expkzb
        21
    expkzb  
       2016-03-23 22:48:41 +08:00
    学完 Java 另外几个不是小菜一碟了么
    zxgngl
        22
    zxgngl  
       2016-03-23 23:12:43 +08:00   ❤️ 1
    用排除法的话,我是这么想的:主观地讲, Python 并不适合企业级的大型项目开发,最大的问题可能是它的动态类型系统; Swift 是个不错的语言,也有苹果这个有钱的爹。 Swift 现在要取代的是苹果的 Objective-C ,而这两个语言的主要战场可能依然是苹果自家的系统,我会担心苹果没有太大的动力推动 Swift 在 Linux 和 Windows 两个主要平台上开花; Node.js 嘛…… 好啦,我编不下去了: P 我要坦白一下,刚才我是先有结论再想论据的,我一开始脑海里的结论是 Java 好。但其实这些语言都是优秀的语言,各自擅长的东西不太一样。现实是无论我们怎么躲避,时间久了这些语言都得有所涉猎,避不开的。建议都学一点,工作用得多的语言就要多深入一些。学习这东西,懒不得,该学的一定早晚要学的,很难避开。以前我学 C 语言的时候心想这辈子再也不用写汇编了,后来发现我错了;写 Java 的时候心想这辈子再也不用写 C 了,后来发现自己又错了。后来又判断错过好多回……但是我还有一点心得,就是如果你想好一个语言,就尝试用这个语言做所有的事情(即使是在特定的时间范围内),坚持一段时间。这四个语言都是通用型语言,几乎都满足“做所有事情”的要求。
    bengol
        23
    bengol  
       2016-03-23 23:56:20 +08:00 via Android
    都学了会死人?
    tencoldays
        24
    tencoldays  
       2016-03-23 23:58:40 +08:00   ❤️ 1
    Java 和 Python 。 node.js 幼稚而愚蠢, golang 是 plan9 的垃圾。
    yangxin0
        25
    yangxin0  
       2016-03-24 00:05:46 +08:00 via iPhone
    ruby 呀...
    zhuangzhuang1988
        26
    zhuangzhuang1988  
       2016-03-24 00:26:38 +08:00
    改下题目我选 C#, F#
    knightdf
        27
    knightdf  
       2016-03-24 00:50:18 +08:00
    我选 Java 。。。不会错的
    slixurd
        28
    slixurd  
       2016-03-24 00:51:48 +08:00
    感觉说什么语言都会的人对一门语言的了解并不会太深入
    做个玩具什么语言都差不多,但是真的要做好哪有那么容易
    zonghua
        29
    zonghua  
       2016-03-24 00:52:30 +08:00 via iPhone
    VB.NET on Linux
    minsheng
        30
    minsheng  
       2016-03-24 02:38:32 +08:00 via iPhone
    @kaichen 管 Scala 叫语法糖……
    fyibmsd
        31
    fyibmsd  
       2016-03-24 08:46:49 +08:00
    都学了也并不够
    xuweitiger
        32
    xuweitiger  
       2016-03-24 10:05:41 +08:00
    @cxbig “手中无剑,心中亦无剑”
    意思就是“啥也不会吗?”我现在就是这种状态……
    glogo
        33
    glogo  
       2016-03-24 10:26:48 +08:00
    @droiz 其他语言都是静态类型么????
    droiz
        34
    droiz  
       2016-03-24 10:54:17 +08:00
    我意思是已经对静态类型无爱了,所以选 swift
    hpu423
        35
    hpu423  
       2016-03-24 11:27:42 +08:00
    为什么没有 php ?
    ooppcool
        36
    ooppcool  
       2016-03-24 11:51:07 +08:00
    是啊,为啥没有提 PHP 啊!正在学 PHP 。
    CosWind
        37
    CosWind  
       2016-03-24 12:11:34 +08:00
    主 Java ,辅 Python 和 Nodejs
    felixzhu
        38
    felixzhu  
       2016-03-24 12:36:46 +08:00
    现在做独立开发都是 python 后台+Swift
    觉得很顺手

    企业级的当然是 JAVA+PHP ,这种东西不是社区讨论能出结果的,大企业技术都定型了
    Mireas
        39
    Mireas  
       2016-03-24 12:37:56 +08:00
    python 和 nodejs
    rainysia
        40
    rainysia  
       2016-03-24 12:38:21 +08:00
    企业级+大数据, java 系. 辅助 scala,python, hadoop 生态圈里面就没 php 啥事儿
    ChiangDi
        41
    ChiangDi  
       2016-03-24 12:39:43 +08:00
    我选 PHP
    liuys36
        42
    liuys36  
       2016-03-24 13:01:08 +08:00
    这样的问题永远都是争论不休
    ipconfiger
        43
    ipconfiger  
       2016-03-24 13:04:05 +08:00
    都会, 且都很拿手, 有啥好纠结的, 这几个上手都快, 语言后面的生态环境, 框架 这些才是大头, 光学会门语言啥也做不了
    simapple
        44
    simapple  
       2016-03-24 13:24:42 +08:00
    如果说是未来 那肯定是 最年轻的
    lzturbo
        45
    lzturbo  
       2016-03-24 13:31:22 +08:00
    个人观点:选啥都是码工,没区别。
    springzero
        46
    springzero  
       2016-03-24 14:01:07 +08:00
    我选 java 不要问我为什么 任性就这么简单
    eamon666
        47
    eamon666  
       2016-03-24 14:48:04 +08:00
    @tencoldays PHP 呢?
    StargazerWikiv
        48
    StargazerWikiv  
       2016-03-24 16:43:06 +08:00
    学 JAVA ,打后期。。。。
    tvallday
        49
    tvallday  
       2016-03-24 18:51:21 +08:00
    曾经困扰了无数码农的月经贴又出现了。不同的是这次换了语言的名字。
    husinhu
        50
    husinhu  
       2016-03-24 20:31:21 +08:00
    居然没有人说 rust
    tencoldays
        51
    tencoldays  
       2016-03-24 21:03:08 +08:00
    @eamon666 PHP 是非常棒的语言。我喜欢的语言是 Erlang 、 PHP 、 Java ,哈哈:) 程序语言领域,很多语言的设计初衷,作者想证明自己牛逼,比如 Ruby 、 Golang 。有的语言设计是为了解决问题,比如 C 、 PHP 、 Java 、 Python 、 Erlang 之类。后者看起来可能粗糙,但实际大智若愚的,最后历经时间的往往是后者。

    以 Golang 的作者为例,之前搞愚蠢的 Plan9 项目,失败后混到 google ,从 Plan9 的垃圾堆中,捡起来一个 lang 加上 go 的前缀,可能加上其他前缀根本没人理,但人毕竟是盲从权威的动物,有 go 之后 lang 也变得荣光起来。
    jwdstefanie
        52
    jwdstefanie  
       2016-03-24 21:56:52 +08:00
    我选 go
    Mark24
        53
    Mark24  
       2016-03-24 22:15:00 +08:00
    从 Python 开始,各个击破吧
    zonghua
        54
    zonghua  
       2016-03-25 00:44:04 +08:00 via iPhone
    Visual Basic
    pljhonglu
        55
    pljhonglu  
       2016-03-25 11:00:42 +08:00
    java 是当下, swift 是未来,大部分人都活在当下,心系未来~
    luluuulu4848
        56
    luluuulu4848  
       2016-03-25 13:41:30 +08:00
    世界上没有一成不变的事情,程序员就是要一直学习
    udfang
        57
    udfang  
       2016-07-20 10:20:46 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5686 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 06:04 · PVG 14:04 · LAX 22:04 · JFK 01:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.