【问题标题】:JavaScript Asynchronous Design Book? [closed]JavaScript 异步设计书? [关闭]
【发布时间】:2010-11-08 04:33:47
【问题描述】:

谁能推荐一本关于 JavaScript 异步编程的高级书籍?假设读者已经知道如何在 JavaScript 中做事,但正在寻找最佳方法的深入分析。这不是关于性能调整和黑客攻击的东西,而是一本关于架构的严肃书籍。

我正在寻找的内容包括排队异步操作、统一常规同步异常和 onError 异步回调之间的错误处理、链接异步调用同时确保发生原始调用所需的清理操作等。当 10 个 Ajax 请求同时运行时,如何最好地管理状态本身就是一本书。

除了 JavaScript 书籍之外,还有什么关于此类模式的最喜欢的书籍的推荐吗?

【问题讨论】:

    标签: javascript ajax asynchronous


    【解决方案1】:

    我还推荐Ajax Patterns and Best Practices 以及其他推荐的书籍。 RESTful Web Services 还描述了如何在客户端和服务器之间引入松耦合;以及为什么对服务器的所有请求都应该是无状态的。

    【讨论】:

    • Ajax 模式和最佳实践看起来是迄今为止最好的推荐。顺便说一句,当我提到管理状态的问题时,我指的是客户端上 JavaScript 中的状态,而不是服务器上的状态。就我而言,在服务器端没有状态(除了身份验证、缓存和一些其他例外,如随机令牌包含在帖子中)几乎是给定的。
    • 好的,这通常由您的 javascript 代码处理。 WRT 与服务器对话时的客户端状态,这是由您的 JS 执行的 XHR 请求确定的 - 请求的 URI 和正文应包含服务器确定发送回什么所需的所有状态。如果这是您正在寻找的内容,RESTful Web Services 会全力以赴。
    • “通常由您的 javascript 代码处理”的部分是我发现非常复杂的部分。当我继续进行 Ajax 调用时,包装闭包的模式就会建立起来。一个调用有一个 onSuccess 和一个 onFailure,但在它完成后,可能会进行另一个 Ajax 调用,它有一个 onSuccess/onFailure,它用一些额外的代码等包装了前一个 onSuccess/onFailure。用许多 try/catch 块制作丑陋的代码.还有一些模式是任务队列的变体。结束为所有这一切编写一个基础设施作为 jQuery Ajax 和应用程序之间的一层。
    • 你说得对,代码很快就会变得复杂。如果您尝试使用 jQuery 作为构建 Web 应用程序的框架,我建议您不要这样做。可以将其用作您的库之一,但不能用作其基础 - 它不是为复杂的 Web 应用程序设计的。如果你有一个用 jQuery 构建的大型代码库,JavascriptMVC 是一个很好的框架。我个人推荐 dojo 作为创建模块化小部件的绝佳工具包,提供 jQUery 的所有功能、依赖项管理器等等。
    【解决方案2】:

    Ajax Design Patterns 是一本不错的书。它有点过时了,javascript 代码风格不是我喜欢的,但技术和设计模式本身仍然高度相关。

    【讨论】:

      【解决方案3】:

      我想学习第二个 Ajax 设计模式。同样来自 O'Reilly,还有一些最新消息:Even Faster Web Sites。从标题上看不出来,但是这个涵盖了很多高级的 Ajax/异步技术。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-18
        • 1970-01-01
        • 2017-12-22
        • 1970-01-01
        相关资源
        最近更新 更多