大家好,又见面了,我是你们的朋友全栈君。
刚好最近学了一点Java,来回答下这个问题。
首先这个问题不好说谁难谁易(就像是问篮球足球谁难),深入学习之后会发现都很难。nodeJS底层是依赖v8跟libuv(c\c++),部分模块是用c++编写,所以深入了解之后会发现还得学c++。而Java将代码编译成字节码运行在虚拟机上,相应的Java字节码、JVM都要去了解。所以研究底层的话两者都很难,不太好区分谁更难。
不过从题主的问题来看可能想问的是nodeJS跟Java哪个上手难,或者是哪个入门难。这样的话倒是可以回答的。由于Java的语言特性,概念多、写法复杂,不如nodeJS灵活,很多情况下在相同场景Java的代码量会比nodeJS多。而对新手来说代码跟概念越多就越难,所以说Java比较难。
简单说下印象比较深的几个点:Java定义变量要考虑变量的类型跟范围,什么int、short之类的。捕获异常的时候也需要写具体类型,NumberFormatException类型还是IOException类型,而nodeJS不需要。最头疼的是Java多线程的内容,有一大堆概念跟api,比如线程锁的synchronized、ReentrantLock。而nodejs的worker_threads模块不用担心死锁的问题,api相对也比较少,使用起来比较简单。
最后,如果想入门一门编程语言的话可以先学习Java,这样难的入门了再学简单的应该是能提高一点效率。如果想快速写出一个简单应用可以学下nodeJS,nodeJS的开发效率还是挺高的。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/156376.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...