Site icon 时鹏亮的Blog

糊状千层面【转】

以下内容转载自:阮一峰 科技爱好者周刊(第 413 期)糊状千层面

实话实说,现实中,大多数程序员的代码其实都很糟糕。

但是,糟糕的垃圾也分等级。一种情况是代码就像意大利面条(Spaghetti code),乱成一团,根本理不清。

好一点的情况是”糊状千层面“(slop lasagna)。这种代码也是糊在一起,但分成了很多层,至少可以按着层把它分开。

即使无法写出优秀出众的代码,你也要尽量避免意大利面式代码,争取写出千层面式代码

一个实例就是 React 框架,它把代码拆分成组件,这样的好处就是,哪怕每个组件都是垃圾代码,至少可以单独替换某个组件。

删除组件、复制组件、内联组件、重写组件都是很容易的操作。因为组件之间是分离的,它让你只需关注单个组件的内部代码。

只要你的组件树的设计是合理的,那么单个组件内部的具体代码就无关紧要。某人写了一个10000行的垃圾组件,哪有什么关系呢,最终有人会重写它,它影响不到代码库的其他部分。

只要代码是千层面结构,那么单独一层很糟糕,并不影响全局

真正重要的是下面的事情。

(1)数据如何在系统中流动,当前的数据从哪里输入,又输出了什么,以及你存储了哪些数据。

(2)用户体验如何,有没有明显的漏洞、糟糕的性能、前后不一致的行为。

(3)基本的抽象概念是否正确,有没有误用。

只要上面三点 OK ,代码又是组件式的可抽换结构,那么程序就没有大的问题。这时,某个组件是否冗长、写得好不好、是否简洁合理,有没有小 Bug,其实无关大局。


尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。


与《糊状千层面【转】》相关的博文:

Exit mobile version