最近看了一个叫「What Comes After MVC」的 slide,突然想起了这么一个 SEO 的标题...
What Comes After MVC 讲的大概是通过区分方法的「可变性」和「副作用」,把方法划分成 Value、Entity、Shell、Adapter。并且限制各个组件的调用层次,比如 Value 里不能调用 Adapter,但 Adapter 里可以调用 Value,这样一来每种组件的可变性和副作用都清晰了。
于是自然想到了 RESTful 的设计,我觉得 RESTful 的设计最伟大的地方在于把七个动词赋予了「安全」和「幂等」这两个重要的语意。使得分布式系统里遵循 RESTful 设计之后,通过动词就可以准确判断请求的可缓存性和可重试性。然后,浏览器、正向代理和反向代理才能根据不同的请求动词,对资源进行缓存和重试,并且达到不误伤的效果。