提高代码可重用性的因素

Ale*_*xey 5 reusability

哪些原则,代码质量,实践,aproaches,语言或框架功能可以帮助您在更广泛的案例中有效地重用功能,类等.所有情况都很有趣:要么您可以修改代码的实现和接口,以启用/改进重用,或者仅实现,或者根本不修改.重用有效性的关键指标是(对我而言):

  • 它减少了多少用于实施和维护的努力
  • 应用质量不会降低
  • 减少了多少复杂性

(所有比较从较低级别重新实现).

PS.如果可能,请为每个答案指定一个因素,并说明它对您的案例有何帮助.

dan*_*ben 5

这是一个经典 - 低耦合和高凝聚力.如果一个模块或函数执行一个特定的任务并且具有很少或没有依赖性,那么它将比可执行多个任务更具可重用性(因为它适用于更多种情况),有很多副作用,需要其他模块等


Dav*_*rby 3

测试驱动开发。为了使代码易于进行单元测试,它应该:

1)只做一件事

2)尽可能少的依赖

3)经常传入这些依赖项(以便可以模拟它们)

令人惊奇的是,这些因素也使得代码可重用。实际上,这并不是巧合 - 拥有可重用代码的最佳方法是确保它尽早被至少两个调用者使用。使用 TDD 创建的代码从两个父级开始 - 正在构建的代码和单元测试,因此它从一开始就被重用。

除了重用之外,TDD 还有许多其他优点 - 它为您提供所有代码的自动化测试,它充当如何使用代码的示例文档,并且使重构更安全。使用 TDD 编写代码可能比编写没有测试的代码花费更长的时间,但您通常可以通过需要更少的调试时间来弥补这一点。