js和java那个难_javascript与java哪个难?

js和java那个难_javascript与java哪个难?javascript与java哪个难?答案是:JavaScript比Java更难。那么这是为什么?下面本篇文章就来给大家介绍一下,希望对大家有所帮助。原因:JavaScript有太多东西需要你自己去理解,这些东西里有很多要么Java已经给你做成范式了,你可以通过学习范式来理解;要么就是根本没有,无需理解。JavaScript需要在语言的基础上再整理一套方法论,这个过程会有不同流派。而Java基本上…

大家好,又见面了,我是你们的朋友全栈君。

javascript与java哪个难?答案是:JavaScript比Java更难。那么这是为什么?下面本篇文章就来给大家介绍一下,希望对大家有所帮助。

d92f5e25d662a7f2af94b9c65a7b6d45.png

原因:

JavaScript有太多东西需要你自己去理解,这些东西里有很多要么Java已经给你做成范式了,你可以通过学习范式来理解;要么就是根本没有,无需理解。

JavaScript需要在语言的基础上再整理一套方法论,这个过程会有不同流派。而Java基本上语言本身已经帮你设定好方法论了,执行它就对了。

写JS需要比较注意不要写全局变量,这不仅是代码规范的问题也是代码质量的问题,于是进而引发了各种变量作用域的问题,很多新手对“函数作用域”难以理解,这个函数作用域又不好用,进而到了ES6又弄出一个let,简直是把局面又搅乱了。

那Java呢?没有全局变量,无需担心。闭包概念也比较弱,变量作用域还是非常清晰的,很好理解。

这个例子就是“Java里根本没有”,它给你了限制,不按它的做那就是编译不过。

基础设施方面,Java也有优势,比如Java有官方的包管理机制,JS还在造(这个过程中又有流派问题)。Java有static/final/public/private等丰富的修饰词,你写什么它就是什么,无需另行约定,也无需奇技淫巧。

总结:

JS语言缺失了一些东西,造成需要自己理解或者再造,一来是增加了学习难度,二来是引起了流派争执。

Java是一门简单的语言,因为它所缺失的是Productivity的部分,但作为一门编程语言来说它基础设施还是比较完善,而且它限制比较紧缩,减少了流派纷争(把流派纷争下放到库和框架的应用上面去了)

Java难学的地方还是框架和类库……Java的最优实践基本都是围绕类库和框架怎么用的,JS的最优实践还有太多是代码怎么写上面。

不过现在JS的框架和类库也不见得少。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156537.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 5G切片是否会让运营商变成“缝补匠”?运营商专家这样解读「建议收藏」

    5G切片是否会让运营商变成“缝补匠”?运营商专家这样解读「建议收藏」话题导火线:什么是网络切片?这个新概念早已随着5G的各类报道频频见于媒体。准确地说,网络切片技术可以让运营商在一个硬件基础设施中切分出多个虚拟的端到端网络,每个网络切片在设备、接入网、传输网以及核心网方面实现逻辑隔离,适配各种类型服务并满足用户的不同需求。但日前国际上一位业内专家提出,5G切片技术实现起来远没有那么容易,“比想象的要更复杂,更凌乱”,…

    2022年10月2日
    1
  • 常见内网IP段_内网ip是什么

    常见内网IP段_内网ip是什么常见内网IP段局域网,解决了ipv4地址不够用的问题。同时方便维护管理。局域网地址范围分三类,以下IP段为内网IP段:C类:192.168.0.0-192.168.255.255B类:172.16.0.0-172.31.255.255A类:10.0.0.0-10.255.255.255…

    2025年11月18日
    3
  • 莫队算法详解_数据结构入队和出队

    莫队算法详解_数据结构入队和出队莫队算法详解本文翻译自MO’sAlgorithm(Querysquarerootdecomposition),作者anudeep2011,发表日期为2014-12-28。由于最近碰到一些莫队算法的题目,找到的相关中文资料都比较简略,而这篇英语文章则讲解的比较详细,故翻译成中文与大家分享。由于本人水平有限,错误在所难免,请谅解。

    2022年4月19日
    47
  • 蓝桥杯单片机DS1302实时时间设计(时间暂停、启动设置)

    蓝桥杯单片机DS1302实时时间设计(时间暂停、启动设置)

    2021年11月12日
    77
  • 在Android Studio中修改maven私库的地址[通俗易懂]

    在Android Studio中修改maven私库的地址[通俗易懂]在.gradle目录中,修改init.gradle文件,修改其中的maven地址。在.m2目录中,修改settings.xml文件,修改其中的maven地址。以下是init.gradle文件:allprojects{repositories{defREPOSITORY_URL=‘http://192.168.1.XX:XXXX/nexus/content/gro…

    2022年7月18日
    31
  • 如何修改系统内核版本名称_linux系统查看内核

    如何修改系统内核版本名称_linux系统查看内核更改系统内核版本系统中安装了多个内核版本,一般重启会根据配置文件的启动顺序,选择一个,怎样选择自己想要的版本?直接修改/etc/grub2.cfg里的序号即可找到对应的menuentry的序号,从0开始编号 最后重启一下即可查看内核版本:uname-a…

    2022年8月23日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号