封装的界限

这是一篇对我意义重大的文章。2025年12月24日上午,我在坐出租车去医院的路上开始撰写这篇文章,而那天下午我查出了颅内出血,随后因此住院并接受了开颅手术,并承受了一些永久后遗症。直到几个月后,我才真正把这篇文章大致补充完全。

“封装”通常是一个工程学或计算机科学术语,其核心思想是将内容包裹、隐藏或整合起来,只暴露必要的部分,以实现简化、保护和模块化。在本文中,我试图将“封装”扩展为一个更普适性的概念,使它有效作用于更多领域,并借此探讨一个重要的话题:封装的界限应如何确定。

我想先谈谈我开始思考这一问题的完整经历。多年前,我在计算机科学领域模糊接触了“封装”这一概念,但当时对其深意仍不甚明白,仅仅是停留在对“封装,继承,多态”这一组专有名词的了解之上。2025年初,在接触现代Minecraft服务器插件时,隐约感到了一种疏离感。当下的插件在操作上似乎更加友好,它们提供了精美的GUI和一站式解决方案,却似乎也隐约失去了一些精简自由的美感。在1.6.2版本的时代,我们使用Essentials,ScriptBlock,RPGItems,SignShop等少数元功能插件的排列组合,已然能够实现无比丰富的设计。但如今,每一个细分任务似乎都有了针对性的解决方案。当我向AI陈述此事时,它正是使用了“封装”一词来概括这种现象。

2025年中,我在《穷查理宝典》接触到了“思维模型”这一概念,其大致陈述了这样一个道理:掌握八九十个思维模型,并对其进行灵活运用和动态迭代,就能解决绝大多数思维问题。这似乎又和“封装”这个概念的某些角度不谋而合。而在撰写文章之前,我则看到了一个对比中英文逻辑差异的视频,它指出了中文相较于英文作为一种封装文字的优势和劣势,这一视角令我感到十分有效。我逐渐开始相信:封装是一个十分有价值的概念,应当以更宽泛的含义进入日常领域,而非屈居为一个专业术语。

“封装”这一概念的运用难点,在于我们需要为不同的任务寻找或设计一个不同的封装程度,使其为任务本身提供最大效益。一个任务不仅存在其客观适合的封装范围,也可能因任务细节而在各种情况下产生差异。在下文中,让我们尝试探讨这一问题。

一、培养自身的封装能力

让我们用芒格的智慧导入这个话题。对于生活这个宏大的任务而言,芒格建议我们掌握八九十个思维模型,然而这个细化程度又是怎么确定的呢?为什么不是几个或上千个呢?这就涉及到封装的平衡点的问题。过高或过低的封装程度,都会对封装的效益带来负面影响。

模型数量过少可能指向了两类问题。其一是单纯的知识疏漏,也即你的知识量本身就令人满意地解决问题。无论你是否认识到了“我的知识还不够”,这种疏漏都将在很大程度上导致铁锤效应(拿着锤子,看什么都像钉子,意指将盲目将自身所掌握的模型错误运用指不适合的领域中)。其二则是模型的抽象度太高,这些模型在更高维度或更底层逻辑中确实正确且切中要点,但理解和调用它们经过需要更多精力,有大材小用之嫌。

模型数量过多也会带来相应的两种弊端。其一是效率低下,当你为各种细分问题寻找具体的解决方案时,也就可能造成知识模型的重复学习,占用了你更多的思维容量和思考效率。其二是的知识的非体系化,当你倾向于以过度独立的方式看待事物时,也就更难捕捉到它们的内在逻辑和有机联结,对更高层次的认知产生阻碍。

最终,在芒格看来,八九十个模型大概是一个合理的数字,这与我个人所模糊认知的数量级也大致相符。这样一个数量级的确定,恰恰体现了一种“封装的平衡”,这也正是本文的论述重点。过度的封装,就像是为所有任务都设计一个独立的函数;而过度的逆封装,就像是试图用二进制抽象描绘所有事物。至于封装的平衡点,则像是我们当下使用的程序语言,它们为通用任务设计了简单封装,却又不会让整套指令系统过于复杂。

二、让封装决策发挥最大效益

在确定了客观存在的封装平衡点后,我们仍要在这一平衡点之内考虑任务的具体特性,通过调整具体方案设计实现最佳状态。以下是几个你可能需要考虑的常见要素。

封装程度的具体确定应考虑目标层级。在逻辑鲜明,具有迁移价值的领域中,从底层构建框架往往是更有效的,而过度封装则可能带来负面影响(例如在学习中文时,从将字而非词视为独立单元是一个更明智的选择)。而在孤立且具象的领域中,适度的封装则可能提供更多便利(你不必为仅有十几个按键的空调遥控板使用组合键)。

封装程度还应考虑受众差异。当你为大众设计一款产品时,你或许要提高其封装程度以实现便利,而面对技术人员则可能需要反其道而行之。又如在前述的“思维模型”一例中,不同个体对于思维抽象程度的适应点是不同的,人们可以根据自己的思维特点在合理范围内增减思维模型的数量,或是三五十个,或是两百多个。

三、封装的艺术

综上所述,封装是一个既有客观合理规则,又需要插入主观考量的复杂且有效的决策思维。我们甚至可以说:封装是一门艺术(这一概念源于我看过的一本名为《选择的艺术》的 Photoshop 教程)。

对于一个同一任务而言,尽管不同道路都能成功实现目的,但请不要忘记继续提升效率,继续寻找一个更令你满意的方式。

滚动至顶部