不要封装太多的实现方法,会造成使用复杂度。一个目的提供一种方法,提供的太多,反而让使用者陷入学习复杂性。

现象

写一个方法要到处去找合适的调用,挺难受。

尤其是 sql 查询的方法。

为什么会有这种感觉:

  1. 确实是项目大小导致的复杂性区别;
  2. 确实是归类的约束不强,导致有些零散;
  3. 写一个新的成本太大了,少即是多,只提供一种实现方法。

核心:一个目的一种实现

不要封装太多的实现方法,会造成使用复杂度。

一个目的提供一种方法,提供的太多,反而让使用者陷入学习复杂性。

良好的 util 封装

  1. 高内聚:一类方法放在一起,不然难找,也不知道想要的有没有、需不需要新写一个。比如 sql 一个文件,qemu-img 一个文件;
  2. 使用文档:必须的,要不然找代码效率很低;
  3. 一个目的提供一种方法:提供的太多,反而让使用者陷入学习复杂性。

小结

  • 一个目的一种实现,少即是多;
  • 不要封装太多的实现方法,会造成使用复杂度;
  • 良好的 util 封装:高内聚、使用文档、一个目的一种方法;
  • 提供的太多,反而让使用者陷入学习复杂性。