我该如何告诉我的经理?

在为现有代码库增加价值的同时,重构然后添加功能往往比简单地添加功能更快。许多优秀的管理者,只要能正确理解软件及其开发过程,就会明白这一点。

当然,也有一些管理者对软件的实质一无所知,他们往往只受截止日期的驱使,可能不愿意多了解自己的专业领域。我说的就是本书前面提到的那些开发人员。有时,Scrum Master 也会犯这种错误,因为他们可能无法理解整个软件开发生命周期。

正如马丁-福勒本人所说:

"当然,很多人说他们是受质量驱动,但更多的是受进度驱动。在这种情况下,我给出了更具争议性的建议:不要说!"

不了解技术流程的管理者可能会一心想着以多快的速度生产出软件,而事实证明,重构是帮助生产软件的最快捷方式。它提供了一种高效、彻底的方法来加快项目进度,并使我们能够顺利地注入新功能。

我们将在本书的下一章讨论管理以及如何有效地管理项目。

总结

在本章中,我们讨论了一些重构代码的方法,以确保设计始终具有良好的质量。通过重构代码,我们可以加深对代码库的理解,并在未来为软件添加其他功能时做好准备。

在重构代码时,简化和分解所面临的问题是两个最好的基本工具。

如果您使用的是 CI 环境,那么在该环境中运行 PHP Mess Detector (PHPMD) 也能帮助您更好地编写代码。

在下一章中,我将讨论如何合理使用设计模式,首先是在网络背景下开发 API 的快速课程。