【问题标题】:How to design a Library?如何设计图书馆?
【发布时间】:2010-12-30 07:48:58
【问题描述】:

我们刚刚开始了我们的新任务——基于网络的项目。在我直接回答这个问题之前,有必要解释一下这个项目。

我们实际上是在将产品从桌面转移到网络。就是这个。所有后端服务都是 Web 服务。我们选择的服务器技术将是 .NET。因为我们对它很好,而且客户也配备了它。因此,我们将在 ASP.NET AJAX 中完成所有服务器工作。 PageMethod 将是与服务器 (C# 3.0) 和客户端 (JavaScipt) 通信的首选。将真正需要 jQuery 来解析 DOM 和 XML 解析。我们不会努力重新发明轮子。

现在,我们必须做一些事情,主要是在 JavaScript 中。我们想把它打包成一个。

E. John 在'Building a JavaScript Library' 上做了一个非常有用的会话,非常有用。它肯定会保持这种方式。

这里有相当多的 JavaScript 工程师。在我们重新开始之前,我希望得到他们的建议和建议。

你知道一些关于 JavaScript 库设计的好的参考资料吗?如果你每个人都制作了自己的 JS 库,你从中学到了什么?你看过 gmail/googledocs/facebook JavaScript 吗?你从中学到了什么?

谢谢。

【问题讨论】:

  • 为什么将.NET、ASP.NET等术语标记为代码?
  • 我认为他的意思是,Stackoverflow 上有很多 javascript 专家,他希望得到有关构建 javascript 库的建议。
  • @Jeremy 谢谢。这正是我的意思。

标签: javascript design-patterns javascript-framework


【解决方案1】:
  1. 使用网络服务连接到数据库并执行查询..

  2. 创建SERVICE.JS,在这个文件中使用jquery.ajax方法调用web服务

  3. 创建一个 DESIGN.JS,在此文件中执行有关用户界面的所有操作(点击、初始化、填充网格、组合等)

  4. 创建一个 GLOBAL.JS,在这个文件中创建全局变量以供任何地方使用(例如:UserId)

  5. 创建一个 HELPER.JS,在这个文件中创建有用的函数,以便在任何地方使用(例如:函数 DATE_TO_STRING(_date))

  6. 在此所有 .JS 文件都使用 GLOBAL.JS 的命名空间示例:

    (function () {
    var GLOBAL = {
    
      CurrentUserId:-1
    }
    
    if (!window.GLOBAL) { window.GLOBAL = GLOBAL; }
    

    })();

  7. 不要使用 ASP.NET 组件。使用 html 输入、textarea 等

【讨论】:

    【解决方案2】:

    从这样的开始:

    var yourNamespace = yourNamespace || (function () {
        "use strict";
        // private variables here
        return {{whatever you want yourNamespace to be here}};
    }());
    

    【讨论】:

      【解决方案3】:

      设计一个 javascript 库 -

      1. 确定您经常编写的函数。
      2. 将它们保存在单独的 .js 文件中。
      3. 在顶部保留日志或评论块 开发版本和 更新以反映 文件。

      完成。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-10-01
        • 1970-01-01
        • 2011-07-22
        • 1970-01-01
        • 2016-07-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多