正确管理大型网站/代码连接的javascripts

时间:2010-12-31 17:54:10

标签: javascript web-application-design

我正在开发的网站有大量的javascript,这些javascript在各种功能中共享,并且还有大量特定于功能的javascript。我已经阅读了有关使用一个单片javascript文件与许多较小文件的所有信息。

就我的目的而言,庞大的文件方法不仅会导致脚本难以维护,而且还会包含大量不需要的javascript。同时,将javascript分开以便仅包含所需的代码将导致过多的文件/ HTTP请求。除了为用户提供额外的文件大小开销之外,包含大量不需要的代码的想法似乎与正确的软件设计概念相悖。

我找到了适用于Apache的mod_concat模块,看起来它完全可以解决我的问题 - 我可以将我的javascripts分成任意数量的文件,只包含必要的文件,并且几乎不会对性能产生影响。

实际情况如此吗?是否需要管理许多文件的唯一潜在缺点?我知道mod_concat还没有永远存在,所以我也在寻找一些背景知识a)以前是如何处理的,以及b)如果使用代码连接,包括适量的不需要的javascript被认为是可接受的(甚至是最佳实践。)

谢谢,Brian

1 个答案:

答案 0 :(得分:2)

我认为你不需要apache模块。为生产创建一个缩小的JS文件应该是最好的方法,因为它只加载一次然后由浏览器缓存。虽然对于开发当然,将应用程序拆分为单独的文件是有意义的。

我个人最喜欢的JavaScript模块管理和压缩是Steal JS,它是伟大的JavaScript MVC框架的一部分(对于大型JS应用程序通常很有用)。它可以在开发期间动态加载模块文件,对于生产,您可以创建一个压缩的JavaScript文件(它也可以创建CSS)。

另一种选择是RequireJS,但我只是快速浏览一下。