网站大量收购闲置独家精品文档,联系QQ:2885784924

Windows+8+Metro+App开发基本架构..doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Windows8MetroApp开发基本架构.

Windows 8 Metro App开发基本架构 ——MVVM模式 Windows 8 Metro App开发基础知识 Windows 8应用的基本情况 Windows 8提供两种基于同一内核却风格完全不同的交互界面,一种是传统的桌面应用程序,另一种是Metro风格的应用程序。由于两者所以来的开发环境和交互方式不同,两种应用程序并不能彼此相互兼容。 传统桌面系统只能运行在x86架构上,Metro系统可以运行在x86或ARM架构上。所以传统的PC机和基于x86体系的平板电脑安装Windows 8之后会包含两个系统,可以自由切换。二基于ARM的平板电脑只能运行Metro环境。 本文所介绍的Metro App开发知识只适用于运行在Metro环境下的应用程序开发。 Windows 8提供的开发环境 下图为Windows 8应用程序开发环境,左侧为Windows 8为Metro应用个程序开发提供的框架,右侧是为传统桌面应用程序开发提供的框架。对于传统的桌面应用程序开发,其开发机制基本没有变化。对于Metro App的开发,微软提供了多种灵活的开发方式,从语言上看,包括HTML5+JS+CSS的开发方式,.NET语言+XAML的方式,两者共同调用微软新提供的运行时库WinRT的接口。其中,微软为基于HTML5+JS+CSS提供了自己的WinJS库。此外,在Metro App开发中,C++可以调用DX接口。可以使用C#,C++,VB创建WinRT包,提供给JS语言调用,使得JS可以实现一些其本身接口未提供的功能。 Metro App的开发工具 目前Metro App只能在Windows 8系统上使用Visual Studio 2012 Express版进行开发,调试可以直接在本机进行,如果需要使用多点触控、位置、加速器等功能,需要使用平板设备,此时调试需要使用远程调试策略。具体开发环境部署、调试以及远程调试内容将在其他文章中进行介绍。Metro App开发环境截图如下: MVVM模式 MVVM模式简介 MVVM即Model-View-ViewModel模式,是MVC模式的一种延伸和扩展,尤其广泛的应用在Silverlight和WPF应用开发上。MVVM模式的工作原理与架构图如下图所示。 MVVM模式的最根本用意在于界面与代码和数据的分离。其中Model主要用于数据的基本组织,可能涵盖数据结构的定义、Web服务、数据库等的封装。View是指用户界面。ViewModel是连接与分离代码的纽带,ViewModel可以完全掌控Model(即数据),同样也可以完全操作View,并且在必要的时候可以接受View的指令来完成相关的交互操作。 MVVM模式的优点 代码与界面分离,在确定交互的前提下,可以有程序员独立完成Model和ViewModel的开发,而设计师可以独立完成界面的设计与开发,两者之间可以并行。 代码复用,在MVVM中,数据、控制逻辑与界面是完全分离,并且是松耦合的,Model和ViewModel完全可以分离出来在其他应用程序中直接复用。 对修改封闭,在修改界面交互功能的同时,不需要修改代码,即不需要修改Model和ViewModel。 Windows 8 Metro App中的MVVM 在Windows 8 Metro App中,几个重要的概念和接口高效的支撑了MVVM模式,其中包括数据绑定、INotifyPropertyChanged接口与模板。在Metro App中,开发人员可以针对控件为数据展示定义不同的Template,可以使得同一组数据(Model和ViewModel)在不同的上下文环境中,可以以不同的样式(View)展现出来。 绑定 Binding在Silverlight和WPF编程中是一个非常重要的概念,基本理念是,设计某种数据结构,该数据结构中包含若干属性,这些属性值以绑定的方式在界面上显示,当这些属性中的一个或若干个发生变化时,界面上显示的数据也相应的发生变化,这个变化的过程不需要开发人员单独写代码来干预。在Metro App的MVVM模式中,Model是数据结构,View是绑定目标,即界面,绑定机制是数据和界面之间的纽带,ViewModel是Model的承载者与管理者。 要实现绑定机制,必须符合以下几点要求: 绑定的源必须是属性,而不能使普通的成员变量 绑定的源必须实现INotifyPropertyChanged接口 绑定的目标必须是依赖属性,大部分控件的可现实属性均为以来属性 INotifyPropertyChanged接口确保了当属性值发生变化时,界面上所有绑定了该属性值的地方都会自动的发生相应的变化。 Metro App中MVVM结构 Metro App与WP7 App MVVM应

文档评论(0)

gangshou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档