2008年12月14日星期日

MVC设计模式之歌

    这里有首歌实在很不错,听这首歌能更清楚MVC设计模式的精髓啊,哈哈.大家都来听听啊.


作者:James Dempsey.

中文歌词:


MVC是一种范型
它构造代码成为功能段,免得你脑袋淤阻
为达到复用,你必须让边界干净
这边是模型,那边是视图,控制器在中间
模型 视图,和夹心饼干一样有三层
模型 视图 控制器
模型 视图 模型 视图 模型 视图 控制器
模型对象正是你的应用系统存在的理由
你设计的对象,包含了数据、逻辑,之类的
在你的应用问题域,你创建定制的类
你可以选择复用所有视图
但模型对象无须改变
你可以建模一部机器,随便什么机器。
建模一个三岁小孩
建模一瓶白葡萄酒
建模人们的窃窃私语
建模一些水煮蛋
建模Hexley的蹒跚步履
模型 视图
你可以建模GQ时尚杂志中的模特儿。
模型 视图 控制器
视图对象通常是控件,用来显示和编辑
Cocoa也是这样,设计良好,赢得好评
Java也是
把任何老的Unicode字符串交给NSTextView
用户可以和它交互,它几乎可以包含任何东西
但视图不知道模型
字符串可以是一个电话号码,或者亚里士多德的文学作品
保持松耦合
达到最高的复用。
模型 视图,一切都是水波荡漾的蓝色
模型 视图 控制器
你可能怀疑现在做吗?
你可能怀疑怎么做到?
模型和视图之间的数据流动
是由控制器居间协调进行
两者之间状态的改变,数据的同步
都是由控制器控制的。
控制器负责将每个改变的状态送进送出
模型 视图,对于Smalltalk的人来说
这是最大的支柱
模型 视图 控制器
模型 视图,读做「噢噢」,不是「呜呜」
模型 视图 控制器
旅程尚未结束
前方还有道路
编写控制器的人
似乎没有得到掌声
模型的使命很重要
视图的外观很美妙
我或许很懒,但有时却是疯了
我写了多少代码,只是为了黏着两者
其实并不是惨痛
说穿了代码并没有神奇之处
只是用来搬动值罢了
我无意出言恐吓
但这是有声誉的
对于控制器你照做就是了
我真希望能得到一个铜板的奖赏
每次将字符串
送给TextField时
模型 视图
我们要如何丢弃黏结
模型 视图 控制器
控制器相当熟悉模型和视图
所以常常硬编码会妨碍复用
你可以将模型的键连结到任何视图的属性
一旦开始绑定
你会发现源码变少了。
是的,这一切自动又免费,让我感到洋洋得意
我知道一旦你使用接口设计工具
许多代码都可以自动产生
省下许多功夫
模型 视图,好处多多
模型 视图 控制器
模型 视图,但是我的应用已经交付
来不及采用MVC了
模型 视图 控制器



译注1 Cocoa是MacOS X的面向对象API。
译注2 这是Cocoa中的一个Class。
译注3 这是MacOS X的用户界面Aqua预定的颜色。

没有评论:

发表评论