多少javascript就是太多

多少javascript就是太多,javascript,ajax,Javascript,Ajax,我最近一直在与某人一起进行一个非常激烈的项目。所有调用都是使用ajax对web服务进行的,数据逻辑在客户端处理。服务器端代码只起到服务器端代码的作用,其他作用很小。多少javascript就是太多 这取决于您的需求和用户的期望。我唯一的建议是,当用户真正希望浏览一个新页面时,想想你在做AJAX的地方。这些都是你“做得太多”的情况 记住,用户99%的时间都在使用其他网站,而不是你的。确保你的网站能满足他/她对网站其他部分以及一般计算机的期望 顺便说一句,可用性测试可以用来找出用户在任何领域的“真正

我最近一直在与某人一起进行一个非常激烈的项目。所有调用都是使用ajax对web服务进行的,数据逻辑在客户端处理。服务器端代码只起到服务器端代码的作用,其他作用很小。多少javascript就是太多

这取决于您的需求和用户的期望。我唯一的建议是,当用户真正希望浏览一个新页面时,想想你在做AJAX的地方。这些都是你“做得太多”的情况

记住,用户99%的时间都在使用其他网站,而不是你的。确保你的网站能满足他/她对网站其他部分以及一般计算机的期望


顺便说一句,可用性测试可以用来找出用户在任何领域的“真正期望”。作为设计师,你的判断可能与典型用户完全不同;另请参见。

如果生成的应用程序直观且对用户有用,则不能说它使用了太多的一种或另一种技术

提供良好的用户体验是我们作为软件开发人员的主要目标。我们用来做这件事的技术只是一个使能器

我们只是在以下情况下使用了太多/错误的技术:

  • 该应用程序不直观,或者 偏离用户的心理状态 模型,或
  • 应用程序过于复杂 困难的或太贵的 为后面的人保养 美国

  • 当Javascript向客户机透露太多信息时,它可能太多了,所以我会从安全的角度来看。一般来说,从性能角度来看,使用Javascript更好。

    问题是,应用程序是否仍然提供必要的功能,如书签功能和尊重用户浏览历史

    如果用户无法为特定页面/状态添加书签,那么应该可以添加书签,这是一个警告标志


    此外,不能理智地使用后退按钮也会导致悲伤。

    我不介意使用javascript,只要它不会暴露敏感信息或打开安全漏洞。

    太多的事情是:

    当你读不懂代码的时候

    当用户没有获得/需要/喜欢/等UI时


    当你杀死你需要的任何服务器端/客户端资源时,我想说,对于任何技术,如果你忽视了一种更直接的解决问题的方法,而倾向于“以同样的方式”去做每件事,那么你很有可能做得过头了。要证明这一点,一个简单的方法是花一些额外的时间编写一个概念验证功能,而不是使用所讨论的方法,并记录需要多长时间,等等。如果您可以通过概念验证完成同样的事情,并向用户提供适当的体验,那么发展战略可能需要改变。

    我想指出前面的一个问题/答案:


    这实际上取决于项目的用途

    用户是谁?这只是一个内在的东西,还是会向世界开放?他们是否希望有一个常规的web风格界面?那会妨碍视线的到达吗

    它需要有多安全?使用javascript会向用户打开很多应用程序,这可能是一个安全问题

    典型的用户机器能处理那么多javascript吗(老机器几乎不能处理大量javascript)

    在决定多少javascript太多之前,有很多问题需要回答


    最终,它很可能会由测试和用户反馈决定。

    这取决于许多因素:

    • 脚本是否向最终用户透露了有关应用程序内部工作的信息
    • 您需要支持多种浏览器吗
    • 您是否需要支持移动用户(或PDA)
    • 您是否使用Javascript强制执行业务逻辑?(通常这应该在服务器上完成)
    • 等等
    一旦你对这些问题有了答案,我想很容易确定你是否越过了某个界限。除此之外,从性能的角度来看,将处理器负载分配给客户端总是一件好事。强制执行客户端业务逻辑也很好,但请确保在服务器上进行了双重检查


    希望这能有所帮助。

    “书签能力”/“后退按钮”和“太多javascript”并不是相互排斥的。这些问题可以用更多的javascript来解决:)但说真的,有时候javascript的巨大努力所带来的好处超过了书签功能的损失。谷歌地图。你说得太对了。有些问题可以通过更多的JS来解决。谷歌地图通过“链接”小部件实现了这一点,您可以将当前视图复制为直接URL。虽然我认为在这种情况下,这是不可能的,但它仍然应该是可用性和性能之间的一个简明的权衡。非常好的链接!我发现它很有用。+1用于采取最直接的方法。我要补充的是,在为开发者节省的时间和为用户节省的时间之间有一个平衡——这是一种折衷,在某一点上,在任何一个方向上交易过多都是一件坏事;对于开发者和用户来说,最理想的回报往往是采取更直接的方法。考虑Ajax所使用的大部分是模仿浏览活动,但在浏览器中。大量裁员很快就会弄巧成拙。