深度解析Windows Phone 7 开发

  近两年来,智能手机市场似乎已经成为iPhone、Android争妍斗艳的舞台,Windows Mobile因为老旧的构架,以及那些换汤不换药的更新,越来越多的Windows Mobile用户纷纷转投其他智能手机平台门下,其市场占有率现如今仅存8%的战果,不但被iPhone拉下第三的宝座,就连Android 4%的市场份额也已逐渐逼近Windows Mobile。在这种前有狼后有虎的状况下,微软对其下一代智能手机平台Windows Mobile 7的研发工作却愈发地低调和沉默,就在各家手机硬件厂商和众多Windows Mobile粉丝耐心磨尽前,微软终于在虎年的大年初二(2 月15日)揭开了Windows Phone 7的庐山真面目。

Windows Phone 7 庐山真面目

  从微软在MWC透露的资料和视频来看,我们知晓 Windows Phone 7 系统和以往的Windows Mobile真是做了彻头彻尾的改进。Windows Phone7将从6大核心出发,分别是:People(联系人)、Pictures(图片)、Games(游戏)、Music + Video(影音)、Marketplace(软件商店)与 Office(办公)。操作上也发生了很多的改变,整个手机上只有三个按钮:后退、开始、与搜索,触摸屏与多点触控已经成为Windows Phone 7首选的交互方式。并且首页也已经改用图标界面,可以说微软已经彻底抛弃了以往 Windows Mobile 传统的界面与设计理念。

  作为Windows Mobile的开发人员,我则更加关注Windows Phone 7在开发技术和开发理念上的改变。早在2005年左右微软就已经开始Windows Phone 7的规划和研发,但是Windows Phone 7在开发6年之久依然迟迟未出,除了受到iPhone和Android的影响进行了重新设计外,还受到微软各项技术向Windows Phone 7平台的迁移战略拖累。

  Silverlight、XNA主导Windows Phone 7开发平台

  3月7号微软官方博客已经公布了Mix10会议上14 场和 Windows Phone 7应用游戏开发相关的Sessions。他们是:

  “Changing our Game”之Windows Phone 7 Series介绍

  开发 Windows Phone 游戏

  开发高性能3D Windows Phone游戏

  富移动网站的设计与开发

  Windows Phone 7 Series应用平台概览

  Windows Phone用户界面及设计语言

  Microsoft Silverlight应用开发介绍

  开发基于Silverlight的Windows Phone应用(第一部分)

  开发基于Silverlight的Windows Phone应用(第二部分)

  Windows Phone应用平台架构

  Windows Phone的XNA游戏开发及调试工具

  Windows Phone应用游戏的分发和盈利

  Windows Phone的Silverlight性能

  Silverlight 及 Windows Phone 7 应用的单元测试框架

  由此可知Silverlight、XNA将成为Windows Phone 7在应用游戏方面的主要开发方式。在以往的Windows Mobile应用程序开发上,如何实现一个较好的界面呈现对程序员来说是非常头痛的事情。在微软提供的.NET Compact Framework开发方式上,内置的控件不但实用性较差,而且在控件的呈现效果也非常简陋,微软对此的解释美其名曰是希望开发人员对所缺乏的控件进行自定义扩展。但是自定义控件对于大多数程序员来说是个可望不可即的技术活,而iPhone和Android之所以在界面呈现上远胜于Windows Mobile,就是因为这两个开发平台在创建起始就为程序员提供了大量功能强大、灵活度高且设计精美的内置控件,为此开发人员就可以将精力专注于应用程序的逻辑设计和界面布局上,不用再纠缠于控件的设计和编码上。

  庆幸的是Windows Phone 7的研发人员终于意识到这个问题,为此Silverlight被引入了Windows Phone 7平台。Silverlight对于很多只专注于Windows Mobile的开发人员来说似乎有点陌生,为此笔者这里简单解释下Silverlight相对应传统的Windows Form开发的巨大优势。在Silverlight中主要是使用一种名为XAML的标记语言和布局界面和设置控件,XAML不但在界面界面上极具灵活性,而且相对应传统的编程语言实现界面来说,亦是简便了许多。

  拿一个最简单的例子来说,在.NET Compact Framework中,Button可谓是我们最常用的控件之一,但是Button控件的功能可谓是非常鸡肋,不能为按钮添加图片背景就是一个硬伤,更别提按钮的悬停、按下、释放效果,以及按钮的梯度颜色渐变等功能支持了。因此最简单地设置一个Button按钮,最起码也是需要如下的C#代码支持:

Button myBtn = new Button(); 
myBtn.Background
= Color.Green;
myBtn.Text
="Submit";
myBtn.Click
+= new System.EventHandler(OnClickHandler);

it知识库深度解析Windows Phone 7 开发,转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。