作为职业程序员,一看js就没兴趣,最近两天了解了一下,觉得还不错。但是我觉得node.js只是一个全新的理念。
作为服务器端,最重要的还是效率,如果node.js完全用c/c++重写了,我想职业团队应该都会选择c语言版本的node.js的吧。
目前node.js里面高大上的功能还都是靠c/c++来实现,那层js的外衣换成c岂不是更好?
这就是我接触node.js两天来的看法,欢迎拍砖。
…这个问题其实没什么意义。就跟java开发一样,底层jvm也是用C来写的,java火不火其实不由其内部原理来判断,是根据市场来驱动的。
对于js包装一层C的看法,C里面也有的,就是从win32 sdk到 MFC,到后来vb封装火了一阵,再到后来各种框架就雨后春笋了 java的swing 、python的wxpython等等,再到现在的移动开发,客户端android用java,ios用oc,在android的层面上看,如果前后台都用java,就达到了统一。也就是当初java web火的时候,没办法分开前后端,导致前端js 后端java。现在有这么一个机会,让前后台统一成js,所以工程效率提高了。
node其实不打算代替j2ee ,跟memcache/redis和oracle/mysql一样的。
PS: 我也对js没兴趣,但起码不能否定它的价值
Node的理念就是异步从而达到高效, 而当时之所以选择用js作为语言,一个主要原因就是js更适合异步开发, 这是c和c++所不擅长的. 所以几乎没有可能性有人用c重写Node.
再有就是js的学习成本要远远小于语言, 这也是许多人一接触就喜欢它的原因, 如果是c开发的话 估计根本就火不起来
java,.net,oc都是c发展起来的,c没取代他们主要是它们都有各自的主力公司支持。node却是民间的,没有哪个大公司主打这个产品。就node目前来说,c加一些新的语言特性即可实现了。也许c 2.0版诞生了,不过这也需要有公司支持。不然没动力。
如果只专注于web,那我肯定选nginx+php。如果是搞socket开发,node.js是一种很好的选择。我觉得应该是这样的,node.js解体,web交给nginx+php,socket交给node.native
和上面的几个朋友差不多,对js没有兴趣,有了node.js才开始喜欢js。里面的很多理念我比较喜欢。 但是做过一个测试把PHP的做的照片墙(www.pper.com.cn),移植到node.js(www.kper.com.cn)后。发觉没有想象中的那么好。 当然,我依然觉得node.js里面的很多设计理念很好,可能对于应用场景需要进一步挖掘。盲目的去移植或者期望替代可能会失望。