扫码阅读
手机扫码阅读

我终于对禅道14年的代码下手了

629 2023-07-19

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:我终于对禅道14年的代码下手了
文章来源:
代码之歌
扫码关注公众号

禅道软件自2009年起已迭代14年代码,从一个人的项目发展到现在几十人维护。为了解决代码中渐增的问题,团队从五月份开始对禅道进行了全面重构,目前版本为18.4,基于MVC模式。

在业务代码重构前,团队对底层PHP框架和UI框架进行了重构。Controller层和Model层分别拆分出Zen层和Tao层,以简化代码并提高可读性。UI框架采用组件化封装,并通过PHP封装的ZIN层简化View层代码,使得View层只需关注业务逻辑和展现逻辑。

禅道保持传统的多页面架构,没有采用SPA模式,主要因为SPA不适合禅道的复杂应用场景。在重构中,团队吸收了现代技术的优点,将其特性融合进新框架。

业务代码重构遇到挑战,主要是团队成员不适应大规模重构。应对措施包括用写段注释来梳理业务逻辑,以及鼓励小碎步提交代码。这些方法有助于确保每次提交都是向好的方向前进。

此外,团队全面推行TDD(测试驱动开发),虽然遇到思维模式转换的挑战,但是通过TDD强迫开发人员更精细地考虑业务逻辑和测试场景。

重构过程中,团队还充分利用了DevOps工具,包括自主开发的ZTF自动化测试框架和ZenData测试数据生成工具,以及在代码提交前强制进行代码扫描和单元测试。

除DevOps实践外,禅道持续加强代码规范、结对编程和代码评审等极限编程实践。团队坚信工程和管理的敏捷性是真正敏捷的关键。

最后,禅道软件公司创始人“春哥”表达了对新版本禅道20的期待,并介绍了自己的公众号“代码之歌”,分享企业管理、产品管理等多方面的实践和思考。

想要了解更多内容?

查看原文:我终于对禅道14年的代码下手了
文章来源:
代码之歌
扫码关注公众号