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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • html中如何写系统时间,在HTML页面获取当前系统时间

    html中如何写系统时间,在HTML页面获取当前系统时间functiongetCurDate(){vard=newDate();varweek;switch(d.getDay()){case1:week=”星期一”;break;case2:week=”星期二”;break;case3:week=”星期三”;break;case4:week=”星期四”;break;case5:week=”星期五”;break;…

    2022年10月18日
    2
  • 用js在控制台打印html页面,vue 使用print-js 打印html页面

    用js在控制台打印html页面,vue 使用print-js 打印html页面Print.js官网官网优点:可以打印多种格式的内容(pdf、json、html等)打印json时可以添加表头。打印html页时可以继承原有页面的样式,局部打印,过滤掉要打印的元素,及其方便。一、vue安装命令:npminstallprint-js–save二、引入这个引入不需要在main.js中,直接在使用的.vue中引入即可这里颜色虽然是灰色,但是也要添加,否则会报错。三、编码我这里…

    2022年10月21日
    5
  • 高级面试题–SpringBoot启动流程解析「建议收藏」

    高级面试题–SpringBoot启动流程解析「建议收藏」写在前面:由于该系统是底层系统,以微服务形式对外暴露dubbo服务,所以本流程中SpringBoot不基于jetty或者tomcat等容器启动方式发布服务,而是以执行程序方式启动来发布(参考下图keepRunning方法)。本文以调试一个实际的SpringBoot启动程序为例,参考流程中主要类类图,来分析其启动逻辑和自动化配置原理。总览:上图为SpringBoot启动结构图,我们发现启动流程…

    2022年8月20日
    6
  • 圣杯布局、双飞翼布局、Flex布局和绝对定位布局的几种经典布局的具体实现示例

    圣杯布局、双飞翼布局、Flex布局和绝对定位布局的几种经典布局的具体实现示例题目要求:针对如下DOM结构,编写CSS,实现三栏水平布局,其中left、right分别位于左右两侧,left宽度为200px,right宽度为300px,main处在中间,宽度自适应。要求:允许增加额外的DOM节点,但不能修改现有节点顺序。<divclass="container">  <divclass="main">main</div>  <divclass="

    2022年6月29日
    25
  • 令人比较失落的IT圈子-关于华为裁员

    令人比较失落的IT圈子-关于华为裁员早在几年前就有人说过程序员在35岁以后如果不做管理就很难混了,如今由于近日的华为事件被炒得沸沸扬扬,显然让这多年前人们的猜测变成了现实,我今年也正好到了这个该“退休”的年龄,所以就想趁机悔恨一番。首先,澄清的一点就是,我并无意诋毁这个IT行业,我只是希望大家可以更加清除的认清这个行业。       什么叫做管理,在程序员的思维里,做管理其实很简单,就是从写代码到不写代码,哪怕是写PPT,只要不写

    2022年7月25日
    33
  • js实现键盘操作对div的移动或改变——-Day43

    js实现键盘操作对div的移动或改变——-Day43

    2021年11月29日
    35

发表回复

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

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