Asp.net 节点中使用的基于事件的模型是否与C#应用程序中使用的基于事件的模型相同?
我听说过node.js和基于事件的编程,以及类似node事件循环的东西。在大学里,我记得我做了一个ASP.NETWeb应用程序。这位教授说,ASP.net使用基于事件的体系结构,其中服务器端的回调函数由客户端的不同事件触发Asp.net 节点中使用的基于事件的模型是否与C#应用程序中使用的基于事件的模型相同?,asp.net,node.js,events,event-driven-design,Asp.net,Node.js,Events,Event Driven Design,我听说过node.js和基于事件的编程,以及类似node事件循环的东西。在大学里,我记得我做了一个ASP.NETWeb应用程序。这位教授说,ASP.net使用基于事件的体系结构,其中服务器端的回调函数由客户端的不同事件触发 这两种不同的技术是否使用事件和事件驱动编程的概念?是的,node使用基于事件的体系结构,其中服务器端的回调函数由客户端的不同事件触发 为什么Node.js是个大问题 1) 在客户端和服务器上使用相同的语言可以加快开发速度 2) 每个web开发人员都知道JavaScript。在
这两种不同的技术是否使用事件和事件驱动编程的概念?是的,node使用基于事件的体系结构,其中服务器端的回调函数由客户端的不同事件触发 为什么Node.js是个大问题 1) 在客户端和服务器上使用相同的语言可以加快开发速度 2) 每个web开发人员都知道JavaScript。在服务器上使用它的过渡路径具有较低的学习曲线 3) 为Node.js构建的模块都是事件驱动的。在其他平台上编写事件驱动代码通常需要筛选第三方模块,以找到事件驱动的模块。例如,Python有几个事件驱动库,但由于Python的传统,大多数第三方网络库都是同步的。Ruby、Java、Scala和许多其他平台也是如此
4) 速度。Node.js在V8 javascript引擎上运行。它可能没有Java或C#那么快,但比Python、Ruby和PHP早了几光年。Python、Ruby和PHP占据了web应用程序市场份额的很大一部分。当以这些语言为主要经验的开发人员需要更快的速度时,Node.js是一个合理的选择。他们的相似之处在于,他们都使用事件的概念——调用代码的东西,而不是你出去寻找更改。但实际上它们是完全不同的 在node(和asp.net MVC)中,来自客户端的事件是“此URL已请求”。就这样。除了请求的内容之外,没有更多的粒度 在ASP.NET Webforms中,它们非常努力地根据客户端页面上发生的情况合成事件。您得到的事件是“文本更改”、“单击按钮”、“选中复选框”。。。基本上和你在普通桌面应用程序中得到的一样 事实证明,Webforms模型变得非常非常复杂,非常快,而抽象层阻碍了ajax调用之类的工作 node所做的另一件事是,与ASP.NET不同,几乎所有内容都是异步事件。数据库呼叫?在节点中异步,在ASP.NET中同步。读文件?在节点中异步,在ASP.NET中同步。HTTP请求到另一个服务器?你明白了 ASP.NET可以异步完成这些工作,但您必须不遗余力地完成,而且它使用线程。在node中,异步的东西是非常自然的,它不需要使用线程,在某些情况下(有些令人惊讶)会产生更高的吞吐量
是的,它们在某种意义上是相同的,即它们都是“事件”,但细节却大不相同。那有什么大不了的?如果它是与ASP相同的架构已经存在多年了,为什么你会听到人们如此多地谈论它?只是因为它是新的吗?