Javascript d3.v3.js和整个d3存储库之间的差异

Javascript d3.v3.js和整个d3存储库之间的差异,javascript,github,d3.js,Javascript,Github,D3.js,对于d3或任何javascript包,包含完整源代码(比如说d3.v3.js)的js文件和它的github repo(在d3的情况下是)有什么区别 github repo包含哪些内容是整个源代码所不包含的 我在Scott Murray的教程中读到D3存储库包含“所有组件源代码”。有人能解释一下“组件”是什么意思吗?让我们看看Anywhere库。它做什么都行。其回购协议位于https://github.com/someone/whatever.js(这不是真正的回购) 回购协议本身通常包含各种信息

对于d3或任何javascript包,包含完整源代码(比如说d3.v3.js)的js文件和它的github repo(在d3的情况下是)有什么区别

github repo包含哪些内容是整个源代码所不包含的


我在Scott Murray的教程中读到D3存储库包含“所有组件源代码”。有人能解释一下“组件”是什么意思吗?

让我们看看Anywhere库。它做什么都行。其回购协议位于
https://github.com/someone/whatever.js
(这不是真正的回购)

回购协议本身通常包含各种信息,包括文档、样式指南和代码组织。Whatever.js实际上由三个文件组成:
lib/Whatever.js
lib/whater tools.js
,以及
lib/whater xml.js
。这些文件是为了实际使用而连接在一起的,但是对于whatever.js本身的开发来说,使用单独的文件更容易

必须在一个文件中处理所有提交是绝对可怕的。拉请求会更糟

分布式版本,又名
whater.js
whater.min.js
,是回购代码处理后的一个版本,但需要修改。在大多数库中,文件只是连接在一起,但对于某些库,会发生一些奇怪的事情。
.min.js
版本是普通的文件,但是在通过缩小工具运行之后,现在通常是丑陋的JS2


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

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

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

Zeke Sonxx的答案似乎很好。我只想补充一点,因为使用Javascript,源代码可以直接运行,所以可能不太需要github repo。但您可以在需要时添加其他文件,跟踪github发布系统中的问题和计划,等等。例如:repo只有一个主源文件,
src/parser.js
,但也有一组用于测试的文件,以及一些其他有用的文件。