js 专家:-)!我可以在 Web 项目中实现复杂的业务层吗(CRUD 操作、算法、复杂的计算和优化、加载图片、交互式用户 GUI、以 csv 和其他格式导出内容、时间驱动的事件,例如电子邮件新闻、安全方面、等等)完全使用 Node.js?
问问题
1886 次
2 回答
1
当然可以。您可以为此使用任何编程语言。
于 2012-06-03T10:14:50.323 回答
-2
简短的回答是肯定的,对于其中一些,Node.js 将表现得非常好。
我个人发现 Node.js 非常适合处理实时事件和多客户端/服务器通信。
当涉及到复杂的计算和业务逻辑时,Node.js 会变得很棘手。就其本质而言,它是异步运行的,这意味着您期望的某些事情不会起作用。像
var script = 0;
for (i=0;i<10;i++){
script = i
}
console.log(script);
将返回 0 到 9 之间的某个数字,很可能是 0。如果您不习惯它(有时即使您不习惯),它会引起无数麻烦。有一些方法可以让它按照你期望的方式工作,在最基本的层面上是有回调的。
var script = 0;
var somefunction = function(i, callback){
if(i < 10){
i++;
somefunction(i, callback);
}else{
callback(i);
}
}
somefunction(script, function(i){ console.log(i)}
还有一些库可以帮助控制流,例如 async.js。
因此,尽管它会使实现复杂的计算和业务逻辑变得有些困难。在我从事的一些项目中,我们使用 python、ruby 或 PHP 来处理业务逻辑方面的事情,并使用 node.js 来处理与客户端的实时通信。
于 2012-06-04T11:19:45.213 回答