复杂的客户端逻辑 - 更好地移动到服务器端?
我正在使用第三方搜索API,并且非常喜欢在浏览器端保存几乎所有的应用程序。 xml完全用javascript解析,并且我使用JavaScript模板引擎动态地呈现复杂的结果对象。有几页重新加载发生,并有很多花哨的JavaScript正在进行。复杂的客户端逻辑 - 更好地移动到服务器端?
我觉得干净的东西让所有的东西都放在了javascript的一面。这将使部署变得更加容易,并且将我的所有代码放在一个地方很好。我试图像使用java编写JavaScript一样严格编码,到目前为止,事情似乎工作得很好。我正在努力使用YUI测试来开发TDD风格,并且乐观地认为这将使不可避免的跨浏览器错误更易于捕捉和修复。代码的大小并不是很小,但也不算太糟糕,我计划在部署之前缩小它,这应该将其减小到现在的2/3。
我不考虑是否有缺点?这里的任何其他支持前端应用逻辑的支持者?
只有在实际改善用户体验时才应该使用AJAX。当琐碎的功能需要JS时,这是非常烦人的。我希望(不知道你的应用是否属于这种情况)能够进入搜索,获得结果,并且在没有JS的情况下浏览结果。
AJAX分页或搜索优化等“额外”功能没有任何问题。但要领应该在那里。
有几个页面重新加载发生,很多花哨的JavaScript正在进行。
JavaScript过度依赖有一大缺陷。请记住,每当你设计一个Web应用程序时,你应该基于这样的前提:用户不支持启用了JavaScript--尽管这是少数用户,但仍有许多用户因为任何原因没有启用它,如果您的应用程序在其基本操作中过分依赖JavaScript,那么禁用JavaScript的用户将无法访问它。
每当我编写具有JavaScript或AJAX功能的页面时,我总是要确保显示或提交信息的第二种方式,以防用户浏览器中的JavaScript被关闭。当然,这通常不是审美所必需的 - 单击菜单栏时菜单项滑动并且页面被更改不会影响页面的核心功能,如果JavaScript被关闭并且它们只是静态链接;但是对于输入数据和显示结果等核心功能,您应确保提供未启用JavaScript的备份方法。
好想法。如果javascript被禁用,客户端的网站根本无法工作,所以我不担心在这个特定情况下排除非js人。 – morgancodes 2009-06-22 22:15:53