类比“中心化应用”与“去中心化应用” 了解 ArcBlock 的朋友都知道,我们在产品和技术设计上经常提到“第一性原理”,但是在帮助大家如何更好地理解去中心化应用的时候, 我想更多使用“类比”的方法。 前些时候,我们的设计师曹雯写了一篇用乐高积木来类比理解 ArcBlock 体系架构的文章《逛乐高玩具店:开发一款去中心化应用的有趣旅程》[5]就是从类比的角度让读者轻松理解我们的软件架构,获得了很多好评。 当我们采用正确的类比,就很容易理解去中心应用和中心化的应用的区别和联系,一些问题和疑问就迎刃而解。无论是建筑设计还是乐高积木,都是用类比的方法来帮助大家更好理解:建筑和去中心化应用是从宏观的角度类比,让大家更容易体会什么是去中心应用;从乐高积木看去中心化应用,是从微观的类比,让大家从细微处去理解如何构建中心化应用。两者有异曲同工之妙。需要注意一点,“类比”的方法往往是为了帮助大家的理解,有些时候未必精确,因此一定需要在类比对概念理解后,进一步深入思考。 ![]() 图:一个用积木搭成的房子的模型和实际的房子 软件设计师(Software Architect)和和建筑设计师(Architect)都是 Architect,因此我们不妨用住宅来理解一下,从架构的角度,去中心化软件跟今天常见的互联网时代的中心化软件有什么区别和联系。 下图左边的高层公寓,可能是很多人都熟悉的每日生活环境。用这样的住房来类比今天的很多互联网服务还是挺贴切的:公寓式的住宅是一种典型的具有中心化特点的服务,很多住户共享了楼道、楼梯、电梯,包括地面以上的空间。很多情况下,住户实际上并没有拥有建筑或者土地,本质上只是在“租用”使用权。对比想象一下,你使用的微信、微博等很多互联网服务,你是和千千万万其他人一起“租用”服务提供商搭建的服务,你账户其实并不是真正属于你,你的数据并不在你的掌控之下。 ![]() 图:香港一处高层公寓(Unsplash @jcgellidon)和澳洲一栋现代风格住宅(Unsplash @rarchitecture_melbourne) 图右则是用一栋独立的住宅来类比“去中心化应用”。去中心化应用更加强调用户的自主性,一如这样的独栋住宅,住户往往自主拥有其土地,拥有其建筑。这正如同“去中心化应用”所强调的,用户应该拥有自主的身份、用户拥有自主的数据资产。 (责任编辑:admin) |