如何使javascript代码易于维护

时间:2013-02-27 05:50:02

标签: javascript

所有,我正在开发一个高度交互的Web应用程序,它需要大量的jquery或js代码,而且我发现我的代码变得有点难以维护并且不是那么可读。有时甚至连作者都找不到指定的代码。

到目前为止,我为清晰代码所做的工作如下所示。

  1. 一个js文件中的一个js组件。(例如。CustomTab.js是我应用中的标签组件。)
  2. 使用模板生成基于JSON的组件HTML。
  3. 使用Jquery UI。
  4. 不引人注目的JavaScript。
  5. 还有其他要点需要注意吗?无论如何,任何建议或建议使js库/框架容易miantanance的技术是指定的,谢谢。

4 个答案:

答案 0 :(得分:4)

我建议您与RequireJS一起使用模块模式来组织JavaScript代码。对于生产,您将能够使用RequireJS优化器将您的模块构建到一个JavaScript文件中。

此外,如果您期望客户端应用程序非常庞大,请考虑使用Backbone.js等JavaScript MVC框架以及服务器端RESTful服务。

答案 1 :(得分:1)

我将这个命名空间模式用于我的库:

MyLibrary.ListView.js:

var MyLibrary = MyLibrary || {};

MyLibrary.ListView = {

    doSomethingOnListView: function() {
        ...
        return this;
    },

    doSpecialThing: function() {
        ...
        return this;
    },

    init: function() {

        // Additional methods to run for all pages
        this.doSomethingOnListView();

        return this;
    }
};

无论哪个页面需要这个:

<script type="text/javascript" src="/js/MyLibrary.ListView.js"></script>
<script type="text/javascript">
$(function() {
    MyLibrary.ListView
        .init()
        .doSpecialThing();
});
</script>

如果某个页面需要额外的功能,您甚至可以链接方法。

答案 2 :(得分:1)

目前我也正在为我的公司开发一个JS框架。我正在做的是我为JS使用OOP元素。换句话说,我正在为C#库实现类似的代码(不是那么类似,模拟将是正确的单词)。作为C#中的一个例子,您使用Microsoft.Window.Forms,因此我可以使用JSOOP并使用方法扩展和覆盖来创建相同的场景。但是如果你在项目中走得太远,将你的JS代码转换为JSOOP将是非常耗时的。

使用JSLint,这将验证您的代码并降低可读的脚本引擎友好代码。虽然JSLint非常严格,所以你也可以使用JSHint。

为每个组件使用单独的文件是个好主意我也在这样做。

如果您愿意,可以下载jQuery开发人员版本,您可以大致了解他们如何创建框架。我学习了很多关于jQuery框架的东西!

答案 3 :(得分:1)

这是我每次问自己的问题。我认为很少有方法可以轻松维护代码。

  • 参与javascript开源项目,了解他们是如何解决这个问题的。我想你可以从每个项目中收集一些独特的解决方案,项目结构的共同部分将回答你关于维护的问题。

  • 使用准备好的解决方案,例如backboneknockoutemberangularjs如果我没有错误的角度不会给你结构,但为你提供强大的工具用于创建代码较少的页面。同时检查todomvc是否有现成的解决方案。

  • 阅读书籍并尝试根据您的需求创建一些结构。这将是困难和漫长的,但结果(可能几年后:))会很棒。