本文主要是介绍工程的艺术(3):代码健壮性之函数之间不要互相依赖,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我的代码有三个文件,一个负责产生SVG
字符串,一个负责存储该字符串,一个负责绘制
代码大体如下所示,并且三个分处不同的文件
class Producer {void createSvgString();...
};
class Storage {void setSvgStying();...
};
class Draw {void drawSvgFigure();...
};
现在有一个需求,我需要在判断这个SVG
图案是不是一个封闭的图案。
一开始为了避免修改太多的逻辑,我在构造SVG
字符串的时候,对于封闭的容器,在字符串的尾部添加了一个Z
结尾。然后我只需要在绘制类中,对其进行判断就可以解决问题了。
这个方法存在着一个相当大的问题,很容易给后续的开发者埋坑。判断是否为容器的方法严重的依赖于产生SVG
字符串的函数,后续若忽视了这点,针对于容器进行其他功能开发时,一旦出现问题,需要在另外的文件中,一个不相干的类中去解决。
所以此处的做法应该是专门创建一个函数,用于判断是否为容器,再将其结果传递给绘制类。
以后再干活的时候,要注意一个函数就专心干一个活,不要在其中穿插其他函数应该干的活。
这篇关于工程的艺术(3):代码健壮性之函数之间不要互相依赖的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!