计算机中的“透明”

 

   一般来说,透明是允许光穿透的属性。也就是说能看得见,能被知道的。但是计算机中透明的意思其实完全相反,“xx对用户完全透明”是指用户看不到,甚至完全不知道有这东西的存在,这里的透明变成了黑盒子。

指客观存在并且运行着但是我们看不到的特性。客观存在的,但对于某些开发人员而言又不需要了解的东西,这就是计算机所指的透明性。简单来说,透明就是黑盒,你只需要应用它给出的接口,而不需要了解内在机理。

真是截然不同的两种理解,透明反而什么都看不到了。

 

  记得刚接触到这个词是在学习计算机网络的时候,网络中有“透明传输”这一说法,相信必定有很多初学者和我一样在初遇此词时折腾许久,甚至一直理解的是截然相反的第一种意思。

 

  个人觉得透明这个词好像在计算机中无处不在,凡是我们不需要去了解的但客观存在的东西都可以称作透明的。按这个理解,透明只是一种相对的说法,底层对上层的屏蔽,减少复杂性,这也算是透明吧,而这个底层与上层又可以对应到很多种事物之间。貌似面向对象中的封装也是一种透明的思想吧。

 

  说到最后,发现其实透明这个词在计算机中也算是透明的了。大家都知道这么回事,但是没人用这词,大多都用其他的词代替了。

 

  也不知道是不是我理解得过于肤浅了,欢迎交流,亲喷。

原文地址:https://www.cnblogs.com/MuyouSome/p/3000294.html