在Node.js中pipe理一个大的代码库

我即将开始使用一个相当大的代码库的Node.js项目。 我宁愿保持我的代码从node_modules分开。

我最好喜欢使用命名空间和文件夹,因为我认为这将是pipe理事物的好方法。 但是,假设我已经正确读取,这意味着我将不得不导入任何文件/“类”我需要使用文件的path,这将是相当混乱,难以pipe理。

pipe理Node.js项目的大量代码的实际方法是什么?

我的build议是使用静态types语言,因为它们提供了自动function来帮助pipe理大型代码库。 这可能是例如飞镖,打字稿或咖啡,所有能够产生的JavaScript。

这篇文章解释了好处(特别是与JS比较): http : //arstechnica.com/information-technology/2014/06/why-do-dynamic-languages-make-it-difficult-to-maintain-large-code-base /

链接文章中提到的一些主要问题:

没有模块化系统; 没有类,接口甚至命名空间。 这些元素是用其他语言来帮助组织大型代码库。

遗传系统 – 原型inheritance – 既弱又不了解。 如何正确地build立深层次的原型(船长是一种海盗,海盗是一种人,一个人是一种东西…),在开箱即用JavaScript的。

没有任何封装; 每个对象的每个属性都被赋予了for-in构造,并且可以被程序的任何部分随意修改。

没有办法注解对存储的限制; 任何variables可以保持任何值。

如果你开始使用JS,并且不想放弃当前的代码库,那么你可以切换到打字稿。 不久之前,我的JS项目达到了5000行代码(大约15个文件),我把它移动到打字稿。 我花了大约4个小时才把它恢复运行。

这篇文章从某人movig Node.js提供了一些见解到打字稿环境: http : //tech.kinja.com/my-experience-with-typescript-710191610

Interesting Posts