在处理Web应用程序框架时,我看到了这个术语Full-Stack Framework,但似乎对它有不同的看法,因此希望听到您的意见。
我已经在stackoverflow(What is Full stack mvc framework? How Grails is full stack framework?)上阅读了这个帖子,但是,它没有说明UI部分吗?
在Laravelbook(http://laravelbook.com/laravel-architecture/)中,它说: “Laravel被称为”完整堆栈“框架,因为它处理从Web服务到数据库管理直到HTML生成的所有内容。”
因此,通过这个定义,ASP.NET MVC也将是一个Full-Stack Framework?
但是,仅仅因为您可以使用HTML为最终用户提供服务,那么它是否可以使其成为全栈?那么交互(JavaScript)呢?就像这篇文章所说,http://www.smashingmagazine.com/2013/11/21/introduction-to-full-stack-javascript/
MEAN也被称为Full-Stack Framework,并且包含AngularJS用于用户交互?我已经读过,这使得MEAN真正成为一个完整的堆栈框架,如果将Laravel或ASP.NET MVC与AngularJS结合使用,那么这些将是一个全栈Web应用程序框架。
这就是我感到困惑的地方,因为使用Laravel或ASP.NET MVC,您可以单独使用自己的框架构建应用程序,并且ASP.NET也可以使用控制器内置异步操作,因此可能不会需要像Angular这样的东西?
与Angular相关的JS交互不仅仅是意见问题,而是仅仅使用普通的旧jQuery库进行DOM更新? Full-Stack是否需要有JS框架?
如何定义或论证什么是全栈Web应用程序框架?
答案 0 :(得分:1)
全栈框架能够处理构建完整Web应用程序所需的一切。这并不是说你不能添加任何其他东西,这可能会让你更容易实现某些目标,比如使用Laravel作为后端,使用AngularJS作为前端。
框架组合的兴起源于想要为您想要实现的目标找到最佳解决方案。在上面提到的示例中,开发人员发现让AngularJS处理前端不仅有利于创建动态单页面应用程序,还可以实现前端和后端之间的代码分离。这使您的应用程序更加模块化,我们都知道它具有很多好处(测试,API创建,第三方集成等)。
最后,这完全取决于你想要达到的目标。如果您的目标是拥有一个简单的Web应用程序,您可能只需要一个完整的堆栈框架,但如果您的应用程序有多个目标,那么您可能会发现组合框架将是最佳解决方案。