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

作为前端,如果需要熟悉一门后端语言辅助开发,是学 Python 还是 Java 呢

  •  
  •   onfuns · May 9, 2019 · 17034 views
    This topic created in 2740 days ago, the information mentioned may be changed or developed.

    node、php 不在讨论范围

    python 主要是运维和爬虫用的多,这个前端也有需求

    java 主要是业务上与后端对接时用得上,能看懂定位对前端肯定是有好处的

    那到底哪个对前端来说优势要大一些呢

    Supplement 1  ·  May 9, 2019
    -----------------

    首先感谢大家留言。

    Node 其实做为前端的后端语言入门,如果想深入,不写 C 扩展是没多大意思的,应用场景还没有 PHP 多,所以说 Node 和 PHP 不在讨论范围。

    好多同学说前端已经够学了,是的,前端要学的东西太多也比较杂。但是如果只是在前端摸索突破毕竟见识度还是不够啊,现在用 Node 或 PHP 查一下数据库,写个增删差改就美其名全栈,我觉得差的还是远。真全栈必须是前后端通吃,不仅会用还要熟悉并且往精通上走,这样才是高级程序员,才能在激烈的竞争中脱颖而出,才不会被 35 岁所限制。

    这个主题也不是引战说哪个语言好,每种语言都有它的价值。

    只是从前端的角度来说哪种优势大点,社区全栈大佬还是很多的,能给些建议,谢谢!
    Supplement 2  ·  May 10, 2019
    一条一条把留言看完,再次感谢大家的指点!

    我为自己的知识浅陋道歉!对不起!

    node 确实有它的独到之处,作为后起之秀它的路还是有很长。我可能不太深入没有发现它的大价值,经过大家的指点我会再次深入学习。

    还有 go 的呼声很高,这是完全没想到的😄
    118 replies  •  2022-01-19 20:35:15 +08:00
    1  2  
    ❮ ❯
    simple2025
    simple2025
    May 9, 2019 via Android
    1
    前端还不够你学的吗
    THESDZ
    THESDZ
    May 9, 2019
    2
    我在想前后端分离到底是为了啥
    puilu
    puilu
    May 9, 2019
    3
    java 吧,python 需求没那么多,招人少
    betulac
    betulac
    May 9, 2019
    4
    沟通你需要了解的是后端框架,node 熟悉了基本就懂了
    s247769541
    s247769541
    May 9, 2019
    5
    前端还不够你学的吗 +1
    del1214
    del1214
    May 9, 2019
    6
    高级前端 node 是必修课
    shawndev
    shawndev
    May 9, 2019
    7
    沟通和框架无关。知道 json,session,sql,定时任务(job)之类的概念就可以了。我习惯的做法是对照 django 或者 rails 的文档看一遍。
    wizardoz
    wizardoz
    May 9, 2019❤️1
    8
    前端还不够你学的吗 +2
    onfuns
    onfuns
    OP
    May 9, 2019
    9
    @chenqh 太局限前端了不好,做了前端几年了,如果想转型做管理还是产品,熟悉一门后端语言优势会很大。但是 node 总觉得不是严格意义的后端语言
    shawndev
    shawndev
    May 9, 2019❤️1
    10
    沟通不是按照后端的思维去思考问题,而是站在上帝视角去权衡问题。比如,你不联表查询我就不方便做 orm,你的 errcode 定义不完善我就没办法简单的实现过滤器。类似种种,想了一下还是和框架没什么关系。
    Ambush
    Ambush
    May 9, 2019
    11
    前端还不够你学的吗 + 1
    trait
    trait
    May 9, 2019❤️1
    12
    @onfuns go 吧,虽然这语言是真的垃圾,但是架不住国内流行,java 学习成本高,python 已经不行了。
    onfuns
    onfuns
    OP
    May 9, 2019❤️1
    13
    好多同学说前端已经够学了,是的,前端要学的东西太多也比较杂。但是如果只是在前端摸索突破毕竟见识度还是不够啊,现在用 node 或 php 查一下数据库,写个增删差改就美其名全栈,我觉得差的还是远。真全栈必须是前后端通吃,不仅会用还要熟悉并且往精通上走,这样才是高级程序员,才能在激烈的竞争中脱颖而出,才不会被 35 岁所限制。
    ryougifujino
    ryougifujino
    May 9, 2019
    14
    后端语言肯定是 Java
    mamahaha
    mamahaha
    May 9, 2019
    15
    太多的语言会让新手眼花,如果你是一名合格的前端,那你就不该再是新手了。你应该跳出来告诉别人该选哪个语言作为辅助,而不是向别人求助。
    GM
    GM
    May 9, 2019❤️1
    16
    你需要 PHP,认真脸。
    collector
    collector
    May 9, 2019
    17
    @trait python 不行了是指这门语言的需求在减少还是只是 web 这一方面不行了?
    ionething
    ionething
    May 9, 2019❤️1
    18
    后端主要是思想,和语言无关。Java 更偏工程化大型项目,Python 更偏灵活易用。按道理有语言基础的同学了解后端最应该是从数据库开始,然后无论 Java 还是 Python 都实现一些通用功能,这样更好。要我说,都学一下! Java 用 Spring Boot 已经够简单了,而且非常成熟了,Python 爬虫啊小功能挺方便的,以后嘛就按需使用,按需再深入了解。Go 的话不建议。
    xmge
    xmge
    May 9, 2019❤️1
    19
    @trait go 垃圾吗??? 我从 java 转 go 的,用 go 两年多了,感觉 go 还不错啊,而且很多大公司都在用 go 重构 java 项目. 垃圾在哪呢?有人说是它的 error 机制,我感觉这个 error 机制还好,比较面向过程而已.也是程序可靠性的体现..个人观点,go 的确没有 java 在语法上,生态上那么好.但它更适应这个时代.
    kaneg
    kaneg
    May 9, 2019 via iPhone
    20
    首选 Python,除非你想做大项目。
    jowan
    jowan
    May 9, 2019
    21
    @onfuns #13 Java/Python 不写 CRUD 吗 :)手动狗头
    myyou
    myyou
    May 9, 2019❤️1
    22
    应该好好学 Node,ssr 也需要前端深度使用 Node 的,至于 c 那是为了开发 Node 扩展用的,即使深度使用的人也很少用到,如果为了性能优化,可以用 typescript 编译成 webassembly 做优化。
    fhsan
    fhsan
    May 9, 2019
    23
    @onfuns 实在话,前端没啥积累一会一个框架一个会一个写法。
    trait
    trait
    May 9, 2019
    24
    @xmge 连 go 2 都要改错误处理了还在这儿嘴硬,你们这些人看看 go blog 很难吗。简洁不是简陋
    rbe
    rbe
    May 9, 2019
    25
    > 不写 C 扩展是没多大意思的,应用场景还没有 PHP 多
    楼主不妨说说你碰到什么后端开发场景需要写 C 扩展才能解决的,什么场景是 PHP 能做 Node 做不了的
    auin
    auin
    May 9, 2019❤️1
    26
    按楼主的要求,必然是 Java,也别从基础开始搞,直接从 Springboot 弄起来快速搭建,然后慢慢深入。
    这叫自顶向下学习方法,需要领悟度比较高
    razertory
    razertory
    May 9, 2019
    27
    Rails
    SorcererXW
    SorcererXW
    May 9, 2019 via Android
    28
    别的不说,Java、Python 都是程序员必学语言。
    不过限定于后端,还是优先考虑 Java,也可以感受感受完全不同的编程体验。Python 和 node 还是有点像
    signalas1
    signalas1
    May 9, 2019
    29
    @xmge 那是因为很多公司的技术栈就在 c 或者 PHP 上,或者根本就是糙猛快的动态语言
    learnshare
    learnshare
    May 9, 2019❤️1
    30
    前端 -> GUI -> 图形学,也够玩几十年了
    signalas1
    signalas1
    May 9, 2019
    31
    你觉得 node 在后端跟其他增删改查的几门流行语言有啥区别,难道后端技术栈在 node 上的公司很多后端需求就用不到?
    yejinmo
    yejinmo
    May 9, 2019❤️3
    32
    哎。。都没人提 C#
    8a9a09dw12
    8a9a09dw12
    May 9, 2019
    33
    可以试试 Python
    abbenyyy
    abbenyyy
    May 9, 2019
    34
    当然是 Java 啦,现在 SpringBoot 很简单了,而且你学了 Java 就了解静态语言的魅力,了解为何大公司都用 Java
    QiaTia
    QiaTia
    May 9, 2019❤️1
    35
    前端还不够你学的吗 + 2019, 前端想学后端首推 Node 和 PHP,
    面向工作 Java, 瞎折腾 Python,
    gzf6
    gzf6
    May 9, 2019
    36
    可以学学 go,好上手,没 rust 那么复杂,近几年生态发展的比较好了。可以换换思路,不会局限于前端的脚本语言。
    sanqian
    sanqian
    May 9, 2019
    37
    。。。前端还不够么。。。python 跟 go 吧 推荐 go 多点
    mintchiu
    mintchiu
    May 9, 2019
    38
    现在学 java ?找不自在么?人那么多,封装的那么深,学的都不是语言,而是学框架了。而且还挺复杂,学不完。
    johnnyNg
    johnnyNg
    May 9, 2019
    39
    可以学一下 node + ts,这应该是对你最有帮助的,万一想学其他的,可以学 go,js 是动态语言,你应该尝试一下静态语言,所以 python 不考虑,Java 实在太繁琐,所以选 go
    nine
    nine
    May 9, 2019
    40
    Ruby
    raincode
    raincode
    May 9, 2019
    41
    主前端,辅助 python,基本覆盖 99%的日常使用场景了,除了你真的不相干前端转后端,那就去学 java 吧,不过根据一个人的精力是有限的,和市场供需关系来看,python 无疑是个最优选择
    love
    love
    May 9, 2019
    42
    写后端 node + typescript 秒杀 python
    Chingim
    Chingim
    May 9, 2019 via Android
    43
    应该掌握一门动态语言,一门静态强类型语言。
    dosmlp
    dosmlp
    May 9, 2019
    44
    之前写 C 艹,现在兼写 Java,所以我推荐学 node,python 就算了
    oatw
    oatw
    May 9, 2019 via Android
    45
    Rails +1
    jon
    jon
    May 9, 2019
    46
    当然是学世界上最好的语言啊
    zgl263885
    zgl263885
    May 9, 2019 via iPhone
    47
    别人碗里的真香?
    ben1024
    ben1024
    May 9, 2019
    48
    PHP 做错了什么
    huangama
    huangama
    May 9, 2019 via iPhone
    49
    java
    version
    version
    May 9, 2019❤️1
    50
    全栈的路子要主后端再转前端学习
    前端转后端.其实走错路的了.
    py 和 java 要达到能上岗.其实很难的.工作也难找.
    如果你当了前端管理.半桶水后端语言技术和后端怂.你会崩的.
    前端还是很多东西..样式.兼容性.页面性能.seo.用户活跃度以及运营..gui.这些都和前端相关.等你有一个好的前端项目或者比较大型的网站上线的..才能在管理上压的了下属.而不要在广度上延伸.
    如何压缩成本..搭建框架给下属..毕业生都能入手快.迭代快.处理 bug 快.解决下属加班的压力.
    这些都是管理要考虑的.如果下属都划水了怎么办..强制 996 也不是办法.老板又给压力.要上线.
    johnsonshu
    johnsonshu
    May 9, 2019
    51
    python 方便。java 每次编译,烦死了。
    xiangyuecn
    xiangyuecn
    May 10, 2019
    52
    想起搞 apijson 的那哥们,隔三差五就在 v2 上置顶帖子(反正看起来蛮活跃的)。前端能干的活还是蛮多的嘛,包括砸后端饭碗。

    感觉上现在浏览器上能用的功能所涉及到的技术点已经涵盖了 > 基础的后端能力。浏览器也提供了数据库,如果前端想用,增删改查啥还是要学的,还是熟悉的 SQL 味道。

    没错,此处件的基础的后端能力就是:堆砌语法+CURD。学会一种语言下的 curd,其他语言下基本照搬。因此前端多学点,在随便学点新语言的语法,说不定比一般人还吊一些。

    最后:php 语法比 python 还丑,都不想学。还是 java 写法比较符合前端口味。当然想速成还是 python 吧,java 学一礼拜估计也难看到实用的效果。
    yifeng1212
    yifeng1212
    May 10, 2019 via Android
    53
    @fhsan 是的,某些方面来说的确有点浮躁,不过这也是社区还在发展的表现,还没有一个大一统的方案
    oukichi
    oukichi
    May 10, 2019
    54
    c# 真的。谁用谁知道。舒服。
    autogen
    autogen
    May 10, 2019
    55
    python 学一个月,java 学一年,你自己选
    devtiange
    devtiange
    May 10, 2019
    56
    楼主看不起 node, 却在考虑 python. 不知道怎么应对楼主了.
    q8164305
    q8164305
    May 10, 2019 via Android
    57
    前端也在学 java,真香,有空一起研究
    wozhizui
    wozhizui
    May 10, 2019
    58
    肯定是 java
    ArcherD
    ArcherD
    May 10, 2019 via Android
    59
    reasonml 前后端通吃,通过 bucklescript 从 reason-react 过渡,js 也不算白学
    newmind
    newmind
    May 10, 2019 via Android
    60
    建议 node,理清后端的思想
    newmind
    newmind
    May 10, 2019 via Android
    61
    语言层面无门槛,入门相对简单
    atonku
    atonku
    May 10, 2019
    62
    c++
    polebug
    polebug
    May 10, 2019 via Android
    63
    选 java,Python 写的比较魔幻不容易看明白
    NicholasK
    NicholasK
    May 10, 2019
    64
    python 入门比较友好,而 java 比较重,学习成本高
    code9999
    code9999
    May 10, 2019
    65
    前端应该会 java 吧,学 python
    xianxiaobo
    xianxiaobo
    May 10, 2019
    66
    java 吧,或者 go
    luozic
    luozic
    May 10, 2019 via iPhone
    67
    Java rust c# 不过实际快速上手还是 python
    littlebaozi
    littlebaozi
    May 10, 2019
    68
    现在前端的招聘要求很多有至少熟悉一门后端语言。
    pryhub
    pryhub
    May 10, 2019 via iPhone
    69
    java 选手告诉你,要学的东西也很多
    Edwards
    Edwards
    May 10, 2019
    70
    建议 node,毕竟 js 一统天下,还熟悉。
    ipwx
    ipwx
    May 10, 2019
    71
    为啥楼上一堆无脑 Java 的。。。

    前段想要一个语言辅助后端,首选不是 Node 嘛?不考虑 JS,Java 和 Python 里面选一个,当然是 Python 拉。

    Python + Flask,一小时上手。反正又不要做生产环境运行的正式后端。
    ipwx
    ipwx
    May 10, 2019
    72
    千万别选 Django,只是为了配合 JS 前端的话,那东西太笨重。
    sufaith
    sufaith
    May 10, 2019
    73
    人生苦短,快用 python
    keepeye
    keepeye
    May 10, 2019
    74
    node 无法满足你?我不信,python php node 都是脚本语言,都差不多,是你不会用罢了。也许你需要学 go ? java 就算了
    liKeYunKeji
    liKeYunKeji
    May 10, 2019 via iPhone
    75
    php 挺好的,一直都在用。
    gimp
    gimp
    May 10, 2019❤️1
    76
    如果你只是想学 Web 后端,那么 Node/Python 没太大区别,前端学习 Node.js 更容易上手

    学习 Python,数学好的往 AI 上发力,再不济你得往数据分析方向去看,web 和爬虫还是有那么点缺少追求了 (别打我

    要不就学习 Go,云时代的 C 语言,前景看好

    Java,大公司或者传统企业用的多,适合长期且需要稳定业务的产业,基础框架有了,大家在框里写模块总是差不多,人来人走对业务影响也不大,Python 能写出花来,每个 Python 程序员入职大概都有一个想要重构框架的心

    PHP 虽然不那么酷,三四线城市,PHP/Java 基本上属于垄断地位

    我看楼主先学学 Node.js 就挺好,了解下后端开发,有自己想法了再学别的也赶趟,再说 Node.js 本身也是前端的扩展技能
    lzxz1234
    lzxz1234
    May 10, 2019
    77
    看你具体打算了,如果是打算近期往后端开发转,那么 java 互联网第一语言还是首选,如果只是有点服务端开发的需求需要处理,那么可以尝试下 go,部署运维简单
    William13
    William13
    May 10, 2019
    78
    @fhsan 其实现在招聘前端好多都需要阅读过源代码,自己手写轮子,还要数据接口与算法的知识,,高级打杂 哈哈
    visonme
    visonme
    May 10, 2019
    79
    你主要工作还是前端,而且辅助,我只能推荐你选 python 了,如果哪天你想改变注意走后端,再回来选 java 把~
    wwwyiqiao
    wwwyiqiao
    May 10, 2019
    80
    既然都是前端了 为啥不用 node.js
    lepig
    lepig
    May 10, 2019
    81
    不好意思 我依然要推荐 PHP
    yiyi11
    yiyi11
    May 10, 2019
    82
    选 java,做真·全栈。
    whp1473
    whp1473
    May 10, 2019
    83
    node 吧
    Ixizi
    Ixizi
    May 10, 2019
    84
    .net core 性能出色 visual studio 牛逼 入门简单 msdn 文档齐全
    TommyLemon
    TommyLemon
    May 10, 2019
    85
    @xiangyuecn 哈哈,被你召唤出来了。
    APIJSON 提供 Java, Python, C#, PHP, Node, Go 语言版哦

    前端用这个可以快速入门后端并快速实现功能(后端提供自动化 API,不写代码也能实现 80% 的需求)


    码云最有价值开源项目:后端接口和文档自动化,前端(客户端) 定制返回 JSON 的数据和结构!
    GitHub 右上角点 Star 支持下吧 ^_^
    https://github.com/APIJSON/APIJSON
    Sapp
    Sapp
    May 10, 2019
    86
    node 永远是前端应该会的第一门后端语言,node 不会前端也就是停留在中级水平了
    liujiangbei
    liujiangbei
    May 10, 2019
    87
    “ Node 其实做为前端的后端语言入门,如果想深入,不写 C 扩展是没多大意思的,应用场景还没有 PHP 多,所以说 Node 和 PHP 不在讨论范围。”
    -- 不太认同楼主这个观点,哈哈
    TommyLemon
    TommyLemon
    May 10, 2019
    88
    @TommyLemon Python 整体上比 Java 更接近 Node,更容易上手
    TommyLemon
    TommyLemon
    May 10, 2019
    89
    @TommyLemon 看语言排行榜就知道了,Java 强势,但 Python 潜力很大的哦,
    不用太过纠结,先都大概看看基础语法,哪个简单学哪个,反正只是辅助嘛
    JackyCDK
    JackyCDK
    May 10, 2019
    90
    Node.JS express 呗
    MonoLogueChi
    MonoLogueChi
    May 10, 2019 via Android
    91
    首先,node 很强,一种语言能做的事,其他语言也可以做,只是实现的难以程度,运行效率不一样。就后端来说,node 比 Python 要适合。
    推荐,我推荐 .net ,生态好,写法简单,性能也不错
    janyin
    janyin
    May 10, 2019
    92
    gogogo
    KuroNekoFan
    KuroNekoFan
    May 10, 2019 via iPhone
    93
    @Sapp 建议你看看 react team 核心成员 dan 的 blog
    exonuclease
    exonuclease
    May 10, 2019 via iPhone
    94
    如果你会写 ts 不如试试.net core
    zhixuanziben
    zhixuanziben
    May 10, 2019
    95
    go 一票
    mamtou
    mamtou
    May 10, 2019
    96
    当然 PHP
    luosiding
    luosiding
    May 10, 2019
    97
    我推荐易语言, 更符合中国人的编程习惯
    kevin1852
    kevin1852
    May 10, 2019
    98
    @onfuns #13 35 岁啥限制?明天 36 了
    kobe6666
    kobe6666
    May 10, 2019❤️1
    99
    大佬从来不会纠结在选择语言上。程序员最重要的是提升你的思维方式和编程思想。
    lonelygo
    lonelygo
    May 10, 2019
    100
    C#
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1530 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 175ms · UTC 11:41 · PVG 19:41 · LAX 03:41 · JFK 06:41
    ♥ Do have faith in what you're doing.