the New Iteration

     WPF给我们带来的不只是一个开发平台,更重要的是一种开发过程和设计理念。以下的文字不是原文的翻译,是看完 New Iteration 后的感想,如有错误之处,麻烦各位朋友指正。

     wpf将原来的一个开发过程分离成由两个角色组成的迭代开发过程。原来的开发过程的弊端是,界面和逻辑耦合在一起,当想要采用新的用户界面时,必须重新设计,有时甚至修改底层的逻辑代码。界面开发和逻辑开发的交流中断,开发过程是一个"tweak-compile-run"的过程。而使用wpf的迭代开发过程,developer负责整个项目的规划,逻辑的实现,尽量考虑界面的调用问题,将对外的接口封装成事件和命令;而designer在blend中进行界面的设计和组织。在整个项目的开发过程中,两者交流频繁,是一个"nudge-nudge-nudge"的过程。交流的工具就是xaml。有个有趣的比喻,将整个过程比喻成打乒乓球,设计的内容是乒乓球,developer和designer是两个选手,乒乓球的来回过程就是developer和designer交流的过程。

      能实现这种交流的前提是,developer和designer都必须熟悉xaml,designer通过工具或直接编码创建xaml文件,开发者通过xaml文件了解设计意图,设计出方便设计者使用的接口。designer可以直接使用这些接口组织用户相应。

      这样的开发过程可以使设计者着重于界面的实现,而使开发者着重于逻辑的实现。当有新的用户体验,或者采用另一种不同的界面的需求来到时,designer可以从容的开发,而developer完成的工作不会被丝毫的影响,因为当初的设计就满足了designer调用的需要。但是在这种开发过程中也有很多developer面临的问题:第一就是事件的相应代码的位置问题,如果响应方法的注册在cs文件中,designer就不能看到响应方法,就不能将响应方法绑定在其他的事件中,所以developer需要尽可能的将响应方法写在xaml中(如果有xaml文件)。第二developer要确保工程自始自终能用blend打开。一个场景中的某个显示元素如果在xaml中没有找到自己的DataContext(它的DataContext可能被developer在cs文件中指定了),这个元素显示就会有问题,有时整个场景都会显示不出来。这是非常普遍的问题。如果出现了这样的问题designer就会从开发过程中退出。


     

      从上图可以看出,在开发的第一阶段,即第一个虚框,Designer设计界面和Developer通过Xaml了解界面功能。在第二阶段,Developer开发底层逻辑和接口,同时又要确保整个工程能用blend打开,这样Designer可以使用底层接口设计用户交互功能。由于项目没有完成或者有新的需求,过程又回到了第一阶段。可见开发WPF应用的整个过程是DesignerDeveloper相互交流迭代的过程,又是两个阶段循环迭代的过程。


     

转载于:https://www.cnblogs.com/PaulLiu/archive/2008/03/12/1101966.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值