d3.v3.js和整个D3存储库之间的区别

时间:2014-10-03 02:03:33

标签: javascript github d3.js

对于d3或任何一般的javascript包,具有完整源代码(例如,d3.v3.js)的js文件和它的github repo之间有什么区别(在d3的情况下,它是https://github.com/mbostock/d3)。

github repo包含整个源代码的含义是什么?

我在Scott Murray的教程中读到D3存储库包含"所有组件源代码"。有人可以解释'组件'

的含义

3 个答案:

答案 0 :(得分:1)

让我们来看看Whatever库。它做任何事情。它的回购位于https://github.com/someone/whatever.js(这不是真正的回购)。

repo本身通常包含各种信息,包括文档,样式指南和代码组织。 Whatever.js实际上由三个文件组成:lib/whatever.jslib/whatever-tools.jslib/whatever-xml.js。这些被连接起来供实际使用,但是对于whatever.js本身的开发,使用单独的文件更容易。

只需处理一个文件提交就绝对是可怕的。拉请求会更糟。

分布式版本,即whatever.jswhatever.min.js,是一个版本的回购代码,但需要处理它。在大多数库的情况下,文件只是连接在一起,但对于某些库来说,奇特的事情发生了。 .min.js版本是普通文件,但在通过缩小工具运行后,这些天通常是UglifyJS2。

有些库甚至没有主生成文件中的所有代码,通常是由于使用原因。例如,Angular.js在ng-route中没有angular(.min).js模块,您还需要包含angular-route(.min).js。这是出于理智的原因,因为很多Angular使用不需要或不需要路由系统,而且它是一个相当大的插件。

答案 1 :(得分:0)

它与开发环境和部署环境中的任何项目相同,因此在github中,d3.js d3.v3.js的开发环境是您需要在产品中使用的编译库。

答案 2 :(得分:0)

Zeke Sonxx的答案很棒。我只是在Javascript的情况下添加,因为源代码可以直接运行,可能不需要github repo。但即使在最简单的情况下,您也可以在需要时添加其他文件,跟踪github问题系统中的问题和计划等。示例:gexf-parser repo只有一个主源文件{{1}但是,还有一组用于测试的文件,还有一些其他有用的文件。 Javascript也可以“编译”,但它不是某些语言(C,Java,Clojure等)意义上的编译。分发的应用程序通常是从repo中的许多不同的源文件构建的。