Node.js模块目录结构哲学

时间:2016-02-20 07:43:00

标签: javascript node.js directory-structure

似乎对node.js的目录结构存在默认协议。至少我在官方网站上找不到任何信息。

从我所理解的浏览开源项目。 通常项目有/bin/lib目录。 /bin包含模块入口点[s]。 /lib包含'帮助'代码。

我猜这是基于Unix目录结构的。 对于带有可执行文件和dll的旧版编译程序来说,它是有意义的。 AFAIK /lib用于在程序之间共享库。

然而,在节点中,真正的依赖关系在node_modules中。 /lib用于应用程序代码。 为什么不使用/src

此模型是从执行的角度设计的。但是,我所看到的所有项目都使用它来构建开发下的代码。我还看过github-projects,其中整个模块只是bin目录中的一个文件。

我是node.js的新手,想知道社区中的人是如何做出这些决定的。

1 个答案:

答案 0 :(得分:0)

我猜你提到的关于libsrc的提到是因为节点哲学设计小模块,不仅在代码大小方面,而且最重要的是在范围方面。这个原则源于unix哲学,特别是 -

  • 小而美。
  • 让每个程序做好一件事。

我为开发Web应用程序而遵循的体系结构分为modelsservicesroutescontrollers。我将lib用于实用程序和帮助程序函数。此外,很多节点应用程序都是使用express构建的,它本身具有最小的api。简而言之,选择约定或配置基本上是一个选择问题。