技术都有被滥用的趋势,尤其是广为流行的技术。比如现在所见到的“Node泛滥”现象,就是一种随意或误用 Node.js 的趋势。其中有两点很突出。首先,我们经常听到这样的说法——应该使用Node.js,这样只用一种编程语言,就能完成前后端的所有代码。对此,我们还是坚持认为多语言编程是一种更好的方法,尽管我们也将JavaScript作为一等语言。其次,我们经常听到团队将性能作为选择 Node.js 的理由。这种观点已经被大量比较合理的基准数据所否定,但其来源还是有历史原因的。当初, Node.js 变得流行时,还是首个使用非阻塞编程模型的主流框架。该模型让 Node.js 非常适合IO密集型任务(我们在2012年的Node.js文章中提到了这一点)。由于单线程的特点,Node.js 从来就不是计算密集型任务的理想选择。而现在,其他平台已经拥有功能强大的非阻塞框架(其中一些已经配备既优雅又现代的 API )。所以性能已不再是选择 Node.js 的理由。
技术都有被滥用的趋势,尤其是广为流行的技术。比如现在所见到的“Node泛滥”现象,就是一种随意或误用 Node.js 的趋势。其中有两点很突出。首先,我们经常听到这样的说法——应该使用Node,这样只用一种编程语言,就能完成前后端的所有代码。对此,我们还是坚持认为多语言编程是一种更好的方法,尽管我们也将JavaScript作为一等语言。其次,我们经常听到团队将性能作为选择 Node.js 的理由。这种观点已经被大量比较合理的基准数据所否定,但其来源还是有历史原因的。当初, Node.js 变得流行时,还是首个使用非阻塞编程模型的主流框架。该模型让 Node.js 非常适合IO密集型任务(我们在2012年的Node.js文章中提到了这一点)。由于单线程的特点,Node.js 从来就不是计算密集型任务的理想选择。而现在,其他平台已经拥有功能强大的非阻塞框架(其中一些已经配备既优雅又现代的 API )。所以性能已不再是选择 Node.js 的理由。