“熵”

208 阅读6分钟

Don’t try to understand it. Feel it. ———— 《Tenet》

问题思考

1、为什么不管我们怎么架构设计,项目随着时间的变化都会变得越来越难以维护?
2、为什么企业的随着人员的增多,会变得越来越难以管理?
3、为什么热水和冷水在放置一段时间后都会变为常温
4、为什么收拾好的家务会越来越乱?

"熵"的定义

什么是熵?

熵(Entropy),最早在1865年由德国物理学家克劳修斯提出,用以度量一个系统“内在的混乱程度”。 我们可以理解为一个系统中的无用能量。 例如热力发电的过程中,我们通过热力发电机把热能转化为电能时转化只能达到39%,但是基于能量守恒定律,能量既不会凭空产生,也不会凭空消失,它只会从一种形式转化为另一种形式,所以这里还有61%的无用能量。但这部分能量不可逆,也无法被再利用,且永远在增加。这个无用能量就被称之为熵值。同时熵又可以从多种角度去诠释:热力学、生物学、统计物理学、信息论、生态学、生物学。

宏观态与微观态

例如:
image.png 一副扑克牌共有54张,如果随便抽取三张,一共有24804(C54-3)种抽取方法,这里每一种选择都是一种微观态,如果某些微观态具有一定的特征,例如:同花、顺子、豹子等等,这种我们就叫做宏观态。这里我们选同花距离,在所有的抽取方式中同花一共有1144(C13-3 * 4)种。所以这里同花的概率为4.6%,非同花的为95.4%。
当我们重新洗牌后,抽出来的依然是同花的概率就非常小,这个说明自然界发展的方向有一个从微观态个数少向微观态个数多的方向发展。

注意: 有序(微观态个数少)=可能性低 ≠ 沒有秩序 无序(微观态个数多)=可能性高 ≠ 有秩序

熵值如何计算

熵等于k×ln(Ω) 这个k叫玻尔兹曼常数 玻尔兹曼常数为1.38×10^-23 J/K,这个Ω会越来越大,所以熵也会越来越大,Ω在自然的发展方向是变大的,所以熵也是变大的。

什么是熵增

在一个孤立系统里,如果没有外力做功,其总混乱度(即熵)会不断增大。 即混乱程度会不断增大,世间万物的演变总是从有序变为无序。
image.png

“热寂”———当宇宙的熵达到最大值时,宇宙中的其他有效能量已经全数转化为热能,所有物质温度达到热平衡。种状态称为热寂。这样的宇宙中再也没有任何可以维持运动或是生命的能量存在。

怎么对抗熵增

既然熵增的解决必然是无限的混乱与混沌,那么我们如何去对抗熵增呢?在上文说到事物的熵增有两个关键的前提“孤立系统”,“无外力做工”。所以对抗熵增主要就是从这两个角度去解决。

耗散结构

打破孤立系统。 耗散结构理论可概括为:一个远离平衡态的非线性的开放系统(不管是物理的、化学的、生物的乃至社会的、经济的系统)通过不断地与外界交换物质和能量,在系统内部某个参量的变化达到一定的阈值时,通过涨落,系统可能发生突变即非平衡相变,由原来的混沌无序状态转变为一种在时间上、空间上或功能上的有序状态。

用人来举例: 很多人一直保持着这样一种观念,即我们天生有一些特定的固定不变的能力与品质,就像“我不善于运动”、“我没有学数学的天分”等,因此无法改变。实际上,人的智力、创造力、运动才能与其他品质,都是可以锻造的,是可以通过时间和努力去改变的。

固定型思维说的是,相信我们出生时带有固定量的才智与能力。采取固定型思维的人倾向于回避调整与失败,从而剥夺了自己过上富于体验与学习的生活。

而成长型思维则是一种以智力可塑为核心信念的系统的思维模式。它相信通过练习、坚持和努力,人类具有学习与成长的无限潜力。

成长型思维的人会将别人的成功当做自己的灵感,而固定型思维的人则会将别人的成功当做是对于自己的威胁,于是就会引发巨大的不安全感以及脆弱感。而这样一种不安全感和脆弱感,常常会让他选择堵住耳朵,闭上眼睛,于是也就切断了自我成长的渠道与途径,让整个情况变得更糟.

主动做功

打破平衡,平衡态是指在没有外界影响条件下,热力学系统的各部分宏观性质在长时间里不发生变化的状态。所以我可以通过外力干扰来打破系统的平衡。

代码“熵”

其实把熵的概念套用到日常的项目开发,代码编写中也是同样适用的。我们的项目随着时间的推移,不管直接使用了何种架构,用了多少的设计模式,到后面结构都将会慢慢的变得混乱,然后越来越难以维护,最后整个推倒重来。

如何对抗代码的熵增

思维导图、技术方案(流程图)

通过清晰的流程图,来一步步减少我们脑中信息量,减缓熵值的增加,从而理清楚整个需求逻辑的脉络。

image.png

低代码产品的“逆熵”,SDK的引用

当我们把复杂的逻辑进行封装,同步暴露出简单的api把复杂的信息打包,这样在写的时候我们就可以去掉对这部分逻辑的思考。

重构

当系统混乱到一种程度低的时候,我们总会做出一件事就是“重构”,在重构的我们会对整个系统重新规划,删除冗余的逻辑,相当于外部干扰销毁了系统,重新新建了一个,把系统的熵值重置为0。

总结:熵增是不可避免的,我们唯一能做的就是减缓熵增。