这些天在做一个python开发任务,发现处理逻辑略复杂,主要是要考虑的特殊情况颇多,导致在开发过程中不断修改逻辑和代码,“苦不堪言”,虽然之前就偶尔画个小流程图,但一直没把整个逻辑的流程图梳理出来,这两天把代码基本实现了功能,着手于代码优化,于是画了画流程图,结果发现早该在coding之前就把流程图梳理好,因为它对于代码的设计和优化实在大有益处,特别是逻辑较为复杂的时候,这里说的是面向过程和面向函数编程,而非面向对象编程。
相比手画,用编辑器画流程图更能梳理出可以代码复用的地方,特别是逻辑可以合并或省略的地方。下面是我用ProcessOn(ProcessOn)在线编辑器画的两幅流程图,画完第一副之后研究了下发现好多逻辑可以合并或者本身就是同一类别的,再反映到第二个版本的流程图中已经化简了很多,所以最终反映到代码编写上也肯定能优化很多,这种优化不仅仅是代码量的问题,还有很重要的一点就是代码可观性和可调试性的提高,这就不仅有益于当前的coding,更有利于后期的测试和更新维护。