webwork开发指南 是逻辑错误?
刚看了夏昕的《webwork开发指南》不知道是我的逻辑有问题还是作者的有问题,大家帮忙想想,以下为引用“就笔者的观点而言。Model-Driven 对于维持软件结构清晰性的贡献,超过了其所带来的微不足道的复杂性。记得关于面向对象设计法则的著作《Object-Oriented Design Heuristics》4中有这样一个有趣的问题(可能与原文在文字细节上有所差异,一时找不到原书,只能凭回忆描述):
当你面对一头奶牛的时候,你会对它说“请给我挤一杯牛奶”。
还是对身边的农场工人说“请给我挤一杯牛奶”?
大多程序员对于这样的提问都会不屑一顾,愚蠢的问题,不是么?
不过在软件开发过程中,程序员们却常常不停的对着奶牛大喊“挤牛奶!挤牛奶!”。
回头看看这里的Property-Driven模式,是不是也有点这样的味道……
作为贯穿WebWork MVC的信息载体,Model扮演着奶牛的角色,它携带了我们所需要
的数据资源(牛奶)。而如何操作这些数据,却不是奶牛的任务,而是农场工人(Action)的工作。
如此一来,Property-Driven模式的身份似乎就有点混杂不清。
这也就是笔者所想要表达的意思,Webwork 出于框架灵活性的考虑,提供了
Property-Driven模式供用户选择,但作为用户的我们,还是需要有着一定取舍原则,这里,
笔者推荐将Model-Driven驱动模式作为WebWork开发的首选。"
我现在的问题是既然作者认为Model是扮演着奶牛的角色,那么他推荐使用Model-Driven驱动模式,那他岂不是也对是对着奶牛大喊“挤牛奶!挤牛奶!”。
大家说呢?