你怎么知道你是否过度依赖图书馆?

时间:2011-12-06 03:18:34

标签: architecture implementation

我曾经为铁路商店做过一些工作。似乎每隔一天,主要开发人员都会为项目添加新的宝石。

这让我想知道决定使用图书馆时的最佳做法。我绝对认为你不应该重新发明轮子,但是包括一个整个推特库只是为了解析供稿而感到错误。

围绕图书馆开发有哪些最佳实践?

2 个答案:

答案 0 :(得分:0)

避免不发明此综合症 - 如果有一个库,请使用它。 但如果它糟透了,也不要害怕停止使用库。如果您花费很多时间来解决图书馆的愚蠢问题/限制,可以在合理的时间内重写(例如,1周到1个月,取决于它的功能与您的产品核心竞争力的接近程度),它可能是是时候用更适合你的东西替换库了。 当然,把我的周月估计值作为一个表面上的猜测,我已经看到了将两年的时间投入图书馆重写是个好主意的情况。

答案 1 :(得分:0)

很难以可衡量的方式陈述图书馆重用“好习惯”。但我建议:

  • 不要使用新库来完成您使用所选技术堆栈的基础库合理实现的目标。
  • 如果您使用的是其提供的一小部分功能,请不要使用新库。
  • 如果是新的,请不要使用新库。图书馆的例外是您几个月来绝对需要的东西,而您的项目团队一直在等待这个新图书馆“保存”它们。否则,您可以在合并之前等待此“新”库的“版本2或3”。
  • 你已经知道是什么让新图书馆变得“好”。但如果你还没有评估是什么让它变得“糟糕”,请不要使用新的库。
  • 如果您没有考虑必要的培训和培训计划,以便让开发团队快速掌​​握新技术,则不要使用新的图书馆。

任何人都可以在我上面提出的建议中挖洞,但通常情况下,在项目代码中采用新的依赖项会带来很大的风险。在我的书中,经常这样做是一种反模式。我建议你的团队都应该听一听“Simplicity: the way of the unusual architect”。