网上找的科普贴,整理了一下发给大家,出处见底部链接。有许多类比的例子不太准确,大家参考下就行。
NodeJs对前端来说极其重要的一个“框架”,简直可以说是开天辟地。因为他是JS运行时候的运行环境,类比Java中:JVM。
java的开端是什么,无疑是jvm,自从有了jvm,java才能吹牛说自己是“一次编写处处运行”,不管你是windows还是linux,只要安装了对应版本的jvm都可以运行.class文件。同样nodejs的作用和jvm的一样一样的,也是js的运行环境,不管是你是什么操作系统,只要安装对应版本的nodejs,那你就可以用js来开发后台程序。这具有划时代的意义,意味着一直以来只能在浏览器上玩来玩去的js,可以做后端开发了,从有了nodejs后就催生出一大批用js做后台开发的前端人员,这部分人员就是偏前端的“全栈程序员”。
上面说到nodejs打开了前端开发人员开发后端的大门,而且nodejs类比jvm,那么学习java的人都知道,学习完jvm(基础)后该学什么了?对,框架,java中有哪些框架,正如上面所说,ssh1,ssh2,ssm等等,这些框架都mvc框架。既然nodej都有了,jvm出现了,那接下来就是js大神开始封装mvc框架,正如java大神开始封装mvc框架一样,相对java流行了几种框架,nodejs对应的mvc框架就多的多了,其中比较有名的是expressjs。
但是js中的模块化,还有很多规范,比如commonjs,amd,cmd,umd,感觉头大了吧,其实简单的来说,就是commonjs是运行在nodejs端,amd,cmd,umd是运行在浏览器,其作用就是import各种js文件,把js模块化管理,可以理解为java中的包管理。
类比Java中的:freemarker的宏。
也就是说,你通过写jsx文件,编译后生成一段js文件。
那么好处是什么?是封装,一大段js定义,最后只需要一句话输出,也就是一行js代码对应右边一个ui组件。
对了reactjs最大的作用就是用来开发ui组件。
参考文章:
https://blog.csdn.net/myKurt/article/details/79914078