【问题标题】:Suggestions for Single-Page Web Application Design?对单页 Web 应用程序设计的建议?
【发布时间】:2011-02-01 13:13:10
【问题描述】:

我的观点是,除非您需要更改用户界面的基本结构,否则您根本不需要为任何用户交互重新加载页面。

考虑到这一点,我想处理我的下一个 ASP.NET MVC 项目。谁能建议我应该考虑的任何原则、模式或实践*?

  • 好书,顺便说一句。尽管如此,我仍然试图围绕一些概念来思考。我认为这样的问题有助于将理论与实际设计联系起来。

edit 我还应该提到我打算使用 jQuery 来处理异步客户端/服务器交互。具体来说,我希望牢记有关架构考虑的建议

谢谢

【问题讨论】:

    标签: asp.net-mvc web-applications oop


    【解决方案1】:

    看看ItsNat,是一个基于Java的Web框架,专注于单页界面应用程序,唯一的问题是你……是Java

    【讨论】:

      【解决方案2】:

      AJAX。

      编辑

      我不同意这个前提,但如果你要这样做,那么你需要考虑几个不同的问题。我有一个类似的应用程序 (http://launchpad.uiowa.edu),它只有一个主页,但这只是因为它非常简单。有相当多的控制器来处理各种可能的用户交互,因此,从架构的角度来看,它在后端看起来并没有太大的不同。不同的是,所有操作都返回 PartialViews 或 JSON,而不是完整视图。这不是一个特别的架构问题,但这是您需要注意的事情。您还需要考虑如何或是否要处理关闭 javascript 的情况。

      您要弄清楚的另一件事是您希望如何跟踪网站的使用情况。任何类型的分析都将毫无用处。在我的例子中,我已经使用返回到我自己的跟踪代码的点击处理程序来检测我关心的所有事情,这样我就可以知道人们是如何使用应用程序的。

      【讨论】:

      • @tvanfosson,我更多地考虑建筑线条。我编辑了这个问题以反映这一点。谢谢
      【解决方案3】:

      确实,AJAX,你可以在 1 页上做所有事情,一旦你掌握了基础知识,这并不难。

      但也有一些挑战/缺点:

      • 搜索引擎优化是行不通的,如果你想用一个 ajax 页面在 google 上排名,你需要付出很多努力。

      • 浏览器历史,浏览器历史对用户体验很重要,所以你需要解决它,不过用 ajax 内容实现并不难。

      【讨论】:

      • @Paul,我在考虑更多架构方面的问题,但感谢您指出 SEO 和浏览器体验问题。我想我还必须考虑用户与浏览器的交互,例如后退按钮和当他们确实刷新页面时处理状态
      • 使用 MVC,老实说,我真的不认为有任何架构问题,它只是返回部分视图和/或 json/xml 等。而不是正常的看法。否则差别不大,这是我喜欢 mvc 的一部分
      猜你喜欢
      • 2010-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-01
      相关资源
      最近更新 更多