「漫谈」软件设计的目标和途径是什么?(8)

2023-05-03 来源:飞速影视
6.4 抽象层级
把大象放进冰箱需要几步?
把冰箱门打开。把大象放进去。把冰箱门关上。就这么简单,这三件事都是在一个抽象的层级上的。那么再细化一些,打开冰箱门需要几步?还有现在没大象,我要去从动物园先弄过来一个,怎么办?这些细节和上述的三个步骤是不是在一个抽象层级上? 肯定不是吧!但是我们通常很多时候都是在干着这样的事情,比如业务代码中夹杂着如何拼接SQL语句的代码。当你读到这样的代码的时候会觉得很乱,为什么感觉乱?就是因为其涵盖了不同抽象层级的代码在一起,导致你在前脚还在想着如何把大象放进去这件事的时候,突然发现接下来的是我怎么才能从动物园弄个大象出来这些琐事。还记得上面的一个判断非空的一小段代码吧?

「漫谈」软件设计的目标和途径是什么?


4干的就样的事情,虽然很细微,但是就是这样一个一个细微的不同抽象层级的代码混在一块,就把你的代码搞乱了,搞的可理解性急剧下降。

「漫谈」软件设计的目标和途径是什么?


6.5 奥卡姆剃刀
这又是个什么鬼?怎么剃刀都出来了,还嫌发际线不够高吗?其实不是的,这个一个关于简单行的原则,也称之为“如无必要,勿增实体”。就是说如果有两个途径可以完成同样一件事情,那就选择更简单假设更少的那一个。

「漫谈」软件设计的目标和途径是什么?


相关影视
合作伙伴
本站仅为学习交流之用,所有视频和图片均来自互联网收集而来,版权归原创者所有,本网站只提供web页面服务,并不提供资源存储,也不参与录制、上传
若本站收录的节目无意侵犯了贵司版权,请发邮件(我们会在3个工作日内删除侵权内容,谢谢。)

www.fs94.org-飞速影视 粤ICP备74369512号