深入浅出WPF——XAML的优点
2008-12-25 23:26
120 查看
正文:
2. XAML有哪些优点
前面一节已经向我们透露了XAML的几个优点:
• XAML可以设计出专业的UI和动画——好用
• XAML不需要专业的编程知识,它简单易懂、结构清晰——易学
• XAML使设计师能直接参与软件开发,随时沟通、无需二次转化——高效
然而,XAML这位翩翩君子的才华可远不止这些。
自
从应用程序从命令行界面(Console User
Interface,CUI,这本书的读者还有用过DOS的吗?就是那东西)升级为图形用户界面(Graphic User
Interface,GUI)后,程序员们就一直追求将视图(View,也就是UI)与逻辑代码的分离。以往的开发模式中,程序员很难保证用来实现UI的
代码完全不与用来实现程序逻辑的代码纠缠在一起。UI代码与逻辑代码纠缠在一起称为UI与逻辑的紧耦合,它往往带来以下的后果:
• 无论是软件的功能还是UI设计有所变化或者是出了bug,都将导致大量代码的修改。
• 会让逻辑代码更加难以理解——修改往往比重写更困难,因为在修改之前必须先读懂。
• 重用逻辑代码变成了Mission Impossible
XAML
另一个巨大的优点就是:它帮助开发团队真正实现了UI与逻辑的剥离。XAML是一种单纯的声明型语言,也就是说,它只能用来声明一些UI元素、绘制UI和
动画(在XAML里实现动画是不需要编程的),根本无法在其中加入程序逻辑,这就强制地把逻辑代码从UI代码中赶走了。这样,与UI相关的元素统统集中在
程序的UI层、与逻辑相关的代码统统集中在程序逻辑层,形成了一种“高内聚-低耦合”的结构。形成这种结构后,无论是对UI进行较大改动还是打算重用底层
逻辑,都不会花费太大力气。这就好比有一天你给A客户做了一个橘子,A客户很喜欢;A客户把你的产品介绍给了B客户,B客户很喜欢橘子味道,但希望它看上
去像个香蕉——这时候,你只需要把橘子皮撕下来
、换一套香蕉皮即可——只需很少的成本就可以获得与先前一样大的收益。(对于软件的“换肤”行为,WPF提供了丰富的Template功能,将在后面详
述。)
TO BE CONTINUED...
2. XAML有哪些优点
前面一节已经向我们透露了XAML的几个优点:
• XAML可以设计出专业的UI和动画——好用
• XAML不需要专业的编程知识,它简单易懂、结构清晰——易学
• XAML使设计师能直接参与软件开发,随时沟通、无需二次转化——高效
然而,XAML这位翩翩君子的才华可远不止这些。
自
从应用程序从命令行界面(Console User
Interface,CUI,这本书的读者还有用过DOS的吗?就是那东西)升级为图形用户界面(Graphic User
Interface,GUI)后,程序员们就一直追求将视图(View,也就是UI)与逻辑代码的分离。以往的开发模式中,程序员很难保证用来实现UI的
代码完全不与用来实现程序逻辑的代码纠缠在一起。UI代码与逻辑代码纠缠在一起称为UI与逻辑的紧耦合,它往往带来以下的后果:
• 无论是软件的功能还是UI设计有所变化或者是出了bug,都将导致大量代码的修改。
• 会让逻辑代码更加难以理解——修改往往比重写更困难,因为在修改之前必须先读懂。
• 重用逻辑代码变成了Mission Impossible
XAML
另一个巨大的优点就是:它帮助开发团队真正实现了UI与逻辑的剥离。XAML是一种单纯的声明型语言,也就是说,它只能用来声明一些UI元素、绘制UI和
动画(在XAML里实现动画是不需要编程的),根本无法在其中加入程序逻辑,这就强制地把逻辑代码从UI代码中赶走了。这样,与UI相关的元素统统集中在
程序的UI层、与逻辑相关的代码统统集中在程序逻辑层,形成了一种“高内聚-低耦合”的结构。形成这种结构后,无论是对UI进行较大改动还是打算重用底层
逻辑,都不会花费太大力气。这就好比有一天你给A客户做了一个橘子,A客户很喜欢;A客户把你的产品介绍给了B客户,B客户很喜欢橘子味道,但希望它看上
去像个香蕉——这时候,你只需要把橘子皮撕下来
、换一套香蕉皮即可——只需很少的成本就可以获得与先前一样大的收益。(对于软件的“换肤”行为,WPF提供了丰富的Template功能,将在后面详
述。)
TO BE CONTINUED...
相关文章推荐
- 深入浅出WPF——XAML的优点
- 深入浅出WPF——什么是XAML
- WPF学习-文本编辑器(界面的<xaml>设计)
- WPF 深入浅出 模板(DataTemplate 数据外衣、ControlTemplate 控件外衣、ItemsPanelTemplate 项布局
- 深入浅出WPF(2)——解剖最简单的GUI程序
- XAML C# WPF
- (转)8天入门wpf—— 第二天 xaml详解
- 深入浅出WPF——如何实现类的Property与标签的Attribute映射
- WPF 访问外部的xaml文件
- WPF 通过行为在xaml上控制itemscontrol(listbox,listview等)的排序分组
- C#的WPF程序中使用XAML绘图示例
- WPF 读取xaml文档
- wpf XAML xaml 进行 数据绑定,Resource DataContext ElementName
- WPF 自定义分页控件DataPager.xaml
- 关于XAML,C#和WPF的更多思考的更多思考
- 在WPF中,如何得到任何Object对象的XAML代码?
- WPF入门:XAML
- 新建WPF应用程序操作提示:没有可用于"D:\xx\……\xx.xaml"的编辑器确保已安装文件类型(.xaml)的应用程序
- 闲话WPF之五(XAML中的类型转换)
- WPF指南之二(XAML概述)