Nodejs pk Java 第1回合:初次交锋

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nodejs pk Java 第1回合:初次交锋相关的知识,希望对你有一定的参考价值。

 
学习一门新语言,最好最快的方法就是与现在所掌握的语言对比着思考。
 
公司最近有个新项目,要用Nodejs开发,现在Nodejs已经很成熟了,可以试试。又开始重新研究,考虑了一下,可以写一系列PK文章,可以帮助刚刚接触Nodejs的朋友,轻松入门。
 
做了很多年Java开发的,就用Nodejs与Java做对比,来个PK。写此文章不为分出谁胜谁负,只是为了学习。两种语言,各有特色,各有特点。
 
环境搭建:Nodejs 胜 Java
 
Nodejs下载一个官方的安装包,一步一步安装就可以了,命令行就可以使用Nodejs了。Java的安装,需要安装Jdk和Jre,还需要配置环境变量。虽然不复杂,但是对于初学者,还是有些难度。
所以我认为Nodejs的环境搭建要比Java简单。
 
学习难度:Nodejs 胜 Java
 
Nodejs的语言基础是javascript,这门语言出来的也很早,做过web应用的同学多少都会点。所以学习难度不高,但是想学好,还是需要下一些功夫。
 
想学好Java,要学的东西特别多,先从J2se开始,再就是J2ee,再就是各种框架,数据库,服务器,前端的知识,都要会点。因此我喜欢把Java说成编程里面的九阳神功,内功。Java是一门很优秀的语言,建议没有学过的朋友,有机会可以学学。 学会了Java以后,再学习其他的任何语言,都比较简单。
 
Java比较综合,学习曲线比Nodejs长,在学习上,Nodejs胜。
 
项目支持:Java 胜 Nodejs
 
Nodejs和Java都可以做Web项目,也可以做一些提供服务的项目。Nodejs说是对并发支持的挺好,其实他是单线程,队列模式,没有多线程一说,因此不存在并发的问题。Java一直是企业级应用开发的领军者,无疑问适合场景要比Nodejs更多,多线程,高并发,都支持的很好。
 
项目支持上各自有特点,适合不同场景的项目。但是目前大型项目,多采用Java开发,因此项目支持上,Java胜。
 
开源组件:Java 胜 Nodejs
 
Nodejs里面组件,类似Java里面的jar包,都是直接放在项目中引用。 Nodejs和Java都有很多开源的组件,Java发展的时间比较早,所以Nodejs的目前没有Java的多。但是Nodejs日常开发的一些组件,都已经有了,还在不断的扩展,将来应该会有更多。
 
Nodejs中的组件叫做node_module,都是由js代码组成。有一个很好用的工具,npm,类似Java中的Maven,方便管理引用。项目中写一个配置文件,组件名称与版本号使用key-value的格式,npm install一下,就都下载好了。Nodejs中的需要引入组件的配置文件是json格式,叫做package.json,Java中的Maven配置文件是xml格式,叫做pom.xml。
 
Nodejs的组件下载下来都是源代码,方便直接查看阅读。Java中的jar包下载下来是class文件,如果需要查看源代码,需要单独下载src。这一点,Nodejs比Java要方便一些。
 
运行环境:Nodejs 胜 Java
 
Java的Web项目运行环境需要单独安装环境,如tomcat,jetty,jboss等等,常用的是tomcat。Nodejs的运行环境就是Node,无需安装其他软件即可运行。
 
这一点便捷性上,Nodejs胜。
 
开发工具:Nodejs 平 Java
 
Nodejs现在有支持很好的工具,比如Webstorm,sublime2,aptana等等,反正很多。Java就不用说了,常用的有Eclipse、IntelliJ IDEA等等。
 
工具都支持的很好,打成平手。
 
好了,第1回合就pk到这里,后面就开始使用实际的项目做对比了。 
 
 

以上是关于Nodejs pk Java 第1回合:初次交锋的主要内容,如果未能解决你的问题,请参考以下文章

Django 在 URL 中访问 PK/Object

回合对战制游戏第一篇

我应该如何为基于回合制的多人 iPhone 棋盘游戏构建我的 DB 和 API 服务器? (考虑 nodejs、mongo、沙发等)

锤子剪刀布

封神联盟-好玩的回合制网游

nodejs-webSocket初次使用(页面链接和创建自己的服务)