nodejs 应用如何选择适合自己的依赖
发布于 6 年前 作者 gnailiy 2300 次浏览 来自 问答

61192489A21AFD6D6C4F01336563CEED.jpg C64DD78E4274715A85109505BC69FCBE.jpg

例如上面两张图,来自于roadhog。 实际上,看到引用这些依赖的时候,我完全是不清楚的,引入的这些是干嘛用的。这个时候我会百度一下或者上 npmjs.com 上查看一下说明和用法。不过很多项目的依赖,有时候感觉直接原生node写就行了啊,或者有些功能雷同的包也不知道选择哪一个。

举个例子 rimraf 这个库是以包的形式包装rm -rf命令,用来删除文件和文件夹的,不管文件夹是否为空,都可删除。但如果是平时我们删除文件,一般都会考虑rmdirSyncunlink 之类的方法吧?我想说的是,我压根不知道删除文件的功能也有现成的库能用了啊。

我想问,对于我们一般自己写nodejs应用的时候,怎么选择适合自己的依赖? 或者什么时候该优先考虑自己将逻辑实现而不是优先去npm上找别人封装的包?

新手,求大佬们解答。@i5ting

3 回复

类似的还有很多,比如shelljs

这可以分一个阶段

  • 能用,初学时,能搞定问题就行,至于模块质量和原理有精力再研究
  • 够用,模块玩的多了,慢慢会介意包大小,明明我只要一个mkdirp,shelljs非给我一大堆命令,不会选。
  • 造轮子,rework一书里讲,挖自己的痒,如果不喜欢就自己写一个,当然别忘了dry原则

无论哪种,其实都是practice makes perfect,分享二篇我写的相关文章,希望对你有用

@i5ting 感谢狼叔

如果功能简单的几行代码,没必要依赖第三方库。 复杂功能或维护成本高的功能,应该优先选用第三方开源方案,因为一个活跃的开发社区对质量保障非常重要。 至于,面对很多功能雷同的库该如何选择,可以通过对比参考github上的star/issue数量查看社区活跃度,通过npm下载量对比可以看到开源库的流行度,另外,有领域大佬背书和参与的质量也值得信赖。 这里有个小工具可以查看和对比npm下载量。

来自✨ Node.js开源项目精选

回到顶部