[原创译文][MVVM专题]__Advanced MVVM 第一章
Advanced MVVM [中英文全集]:
第四章:ViewModel架构简介
第五章:Animated Transitions
第六章:Animated Transitions 下的无限制撤销实现
第七章:Game-Over对话框
第八章:回顾
作者: Kingmoon
转载请注明: http://www.cnblogs.com/kingmoon
前言: 嘿嘿抄文章抄多了偶尔也发一篇自己写的,不过本篇仍然不是我的原创lol. 本篇文章翻译一位外国大神JoshSmith写的<Advanced.MVVM>(本人译为: 先进的MVVM). 该文章用MVVM架构设计了一个泡泡游戏.但是在网上找了很久都没有中文版所以我打算自己翻译一个HOHO.本书一共有8章, 我将利用空闲时间分阶段翻译.
第一章: 介绍
Model-View-View-Model 设计模式这些天在WPF和Sliverlight中是一个热点话题.网上有大量的信息帮助人们去学习这种模式的基础, 但是最终人们都是以坐享其成而告终. 其中在大部分使用MVVM的应用程序中都是存在着一些共同的设计问题, 本篇电子书就是为了填充这部分空缺.
随着你读完这本电子书,你将会掌握一些很好的技巧去克服这些共同的障碍.在编写这个应用程序中我已经用到了所有的本文提到的技术和工作中的一些经验.另外为了解决一些特别的MVVM的设计问题, 同时我们也会复习些高级别的WPF/MVVM应用程序架构和讨论他们是如何应用到这个程序中的.
特别的提出来,我们将会复习到以下内容:
● 设计Views的最佳技巧
● 设计ViewModels的最佳技巧
● 确定哪些状态和逻辑是属于Views和ViewModels的
● 如何协调ViewModel和View之间动作的转化.
● 在动作转化过程中,如何实现无限的撤销.
● 在ViewModel层,模式对话框是如何工作的
Demo应用程序
本电子书涵盖的知识都被包含在了一个我写的WPF游戏中,叫做Bubble Burst.它是一个在Web游戏和手机上很著名的游戏:Bubble Breaker的变种,我必须警告你这个游戏是很容易上瘾的,所以不要长时间玩这个游戏.
下面是这个游戏的截图:
这个游戏非常简单,很明显是清除这个屏幕上的泡泡,点击连续相邻的几个泡泡他们就会从屏幕上消失.两个相邻的泡泡意思就是: 一个在另外一个的上方,下方,左边或者右边.如果你点爆了一组泡泡,上面的泡泡就会掉下来填充空缺.然后所有泡泡腾出的空间将会被左边的泡泡迅速占领.一旦少于一组泡泡游戏将会结束.
当游戏结束了,你将会看到下面的对话框:
另外,点击右键会有两个选项,你可以重新开始万一你真的无路可走了.当然如果你愿意,你也可以按Ctrl-Z来撤销.
源代码
地址: http://Bubblebrust.Codeplex.com
这个Bubble Burst源代码提交到了CodePlex网站上.在下载之余,你可以利用CodePlex Project来询问一些关于这本电子书,游戏Bug和得到最新的升级.
BubbleBurst 是在ViusalStudio 2008(SP1)创建的. 他是基于.Net3.5(SP1)编译的. 使用C#编写,同时也大量使用Linq和许多C#3.0语言新特性.这个游戏需求运行的环境和其他标准的WPF应用程序运行环境一样并没有其他东西需要安装.