前端“标准组件”

在长期的代码开发中,组件的标准化尤为重要,那么何为“标准组件”呢?

通用性

我们可以设想这样一个需求:我们需要一个能发红光的灯泡,然后我们就编写了一个发红光的灯泡;又来一个新的需求:需要一个能发绿光的灯泡。那么我们就要想,同样是灯泡,为什么不能复用呢?因为功能不一样,前面的能发红光,我们需要发绿光的。那么我们就可以将前面的代码拷贝一份,将其中的发红光的功能改成发绿光,需求似乎很快完成(🐶狗头保命)。这就是我们要说的通用性,很显然这样的组件并不满足通用性。

将我们面临的问题抽象成日常生活中的对象,往往是易于理解的,一个通用组件要实现的是某一类功能,就像刚才的灯泡,我们不仅需要他能发不同颜色的光,而且光的强度也要可以改变。

从编码角度来说,再编写组件时,通用性就表现在接口的丰富度上。

健壮性

这是任何软件系统都必须尽力满足的要求,具体而言就表现在每个组件的健壮性。

这里并不提供构建“标准组件”的方法,只是提供了一个思路。

总的来说,组件内部不应该产生严重的副作用。对于数据而言,组件内部应该只是消费数据的,不应该生产数据,当然这只是对于具体的功能组件而言的。