Fielding先生在其博士论文中,明确地给出了REST架构风格所基于的一些基本的假设。事实上,在任何一种架构风格中都存在着一些基本的假设,当然,作为架构风格的实例的某种特定的架构中也包含了这些假设。Fielding先生本人并不认为REST是一种普适的“银弹”架构,我们也不要这样认为。
EJB2.x的一个很大问题就是它并没有告诉开发者其架构所基于的假设,使得一些不明就里的开发者误以为EJB2.x就是一种解决企业应用问题的普适的架构。一时间,言必称EJB、言必称分布式对象,貌似“银弹”架构已经找到。
结果如何呢?大家都看到了,EJB2.x落得了一个惨淡的结局。
为何会出现这种情况呢?当然跟一些软件大厂例如Sun、BEA、IBM、Oracle当年在EJB中有着巨大的利益有关,因此他们不肯说出EJB2.x所存在的严重的问题。一直到Rod Johnson同志来捅破了这层窗户纸,扮演了那个说皇帝没穿衣服的小孩。
这样的事情必然还会一再发生在软件行业中。因此我要对一些辉煌架构的推销者(包括《程序员》杂志中一些枪文的作者)说:“如果你不肯告诉我你的架构所做的假设,我就认为你是在有意行骗。”
查看本文来源