这是一个IT大变革的时代,今天,我们使用互联网而不是使用电脑,个人消费者而不是企业需求推动着IT行业的前行。在这个时间点上,作为桌面操作系统和开发平台的霸主,微软通过TechEd2012大会向我们展示了微软公司对这个时代的理解和对未来的展望。
移动互联的崛起
对于个人消费市场而言,如果说前一个时代是桌面软件的天下,今天则是互联网的王国。专注于各个领域的桌面软件曾经占据了我们的电脑,比如下载文件的“网际快车”,播放影音的“金山解霸”等等。但是随着互联网基础设施的发展和内容的丰富,单纯的桌面软件一个个淡出我们的视线。而依托于互联网的优势,以迅雷、微博、微信等为代表的更加专注于内容的新一代应用开始在包括电脑在内和各种终端设备上攻城略地,在路上,在书房,在卧室,这些应用在不同的平台上提供者类似的用户体验,尽可能在最长的时间段内吸引着越来越多用户的眼球同时获得了空前的成功。
Application到App
为了和之前传统的桌面应用程序(Application)相区分,贡献了最大移动网络流量的iPhone手机厂家,苹果公司将这种新一代应用程序命名为App。与Application相比,App不仅删减了8个英文字母,更重要的是它具备以下特征:
* 专注于内容
* 跨平台提供类似的用户体验
我认为,在包括微软在内的主流平台厂商看来,对于个人消费者来说,App是未来的大趋势。为了让更多的开发者在微软平台上开发App,微软提供了一系列的技术和服务。其中集大成者莫过于TechEd 2012中的主角:三屏一云。
三屏一云
“三屏一云”是由微软公司提出的新概念,指的是PC、平板电脑、手机和云计算的高度整合。这四个元素构成了个人消费者的主要IT环境,在PC、平板电脑和手机的三块屏幕上实现类似的用户体验,并以此消费云计算平台提供的内容和服务。而“三屏一云”从概念变为现实的重要标志便是Windows 8的发布。
Windows 8是微软首代实现了PC、平板电脑和手机融合的操作系统,而且在Windows 8中集成了Skydrive(Skydrive是微软云计算平台中面向个人消费者的存储服务。Skydrive是Office 2013的首选文件路径,也是微软推荐的应用程序文件存放位置)和Windows Live ID认证。这就意味着用户可以使用同一Live ID登陆Windows Phone 8的手机、Windows 8 RT的平板电脑和Windows 8的PC,然后操作保存在Skydrive上的同一文件。简单的说,对于Windows 8的用户而言,三屏上用户看到的运行环境(认证用户、文件和部分系统设置)和用户看不到的运行环境(系统内核和主要API)已经高度统一,这使得开发者在三屏上实现无缝用户体验成为了可能。
在解决了技术上的可能性后,微软在开发平台方面的努力也降低了开发者实现统一用户体验的难度,提升了工程上的可行性。Windows和Windows RT可以实现编译文件级别的通用,基于WinRT SDK开发的同一个执行文件同时可以在Windows 8和Windows 8 RT上运行;Windows Phone和WinRT可以实现UI层外大部分代码的复用,使用MVP或MVVM模式设计的WinRT应用程序只需要对视图部分代码和设计进行修改(这个修改在一定程度上是必须的,因为手机用户的体验需求和平板电脑有一定的差异)并使用Windows Phone 8 SDK重新编译即可运行在Windows Phone 8手机上。而在三个终端平台上,Skydrive提供了一致的访问接口。在TechEd 2012中,大量的课程和动手实验都围绕着这部分内容展开。我认为,在微软看来三屏一云战略是桌面平台的重中之重,如果你是一名Windows平台的开发人员,这部分需要格外关注。
大一统的捷径
虽然微软在2012年一口气推出了Windows 8,Windows 8 RT和Windows Phone,甚至数十年第一次推出微软品牌的计算机Surface RT。但目前受限于上市时间较短,Windows 8系列的设备在市场的总占有率并不是很高。为了满足其他平台(如iOS和Android)用户的需求,一部分开发者依然在使用HTML进行开发。诚然,多数情况下Web是目前跨平台应用开发中成本最低的解决方案。但受限制于浏览器的用户体验和收费渠道的匮乏,用户体验提升空间更大、有丰富收费渠道支持(这点Android平台可能有所例外,来自业余Android平台开发者的吐槽)的App依然有着更大的吸引力。
如果你现在已经拥有一个可以跨平台运行的基于HTML开发的Web站点,而且你的站点设计符合HTML5标准,没有使用类似于ASP MVC的后台内容生成技术。那么微软为你提供了一条将HTML网站转换为两屏统一App(暂时不支持Windows Phone 8)的捷径。
你可以在极短的时间内完成HTML向Windows 8 App的迁移。Visual Studio支持使用HTML 5开发Windows Store应用(Windows 8和Windows RT的App),只需要以下几个步骤就可以完成迁移。
1. 创建语言为Javascript的Blank App工程
2. 拷贝网站内容到Windows Store工程下
3. 修改HTML文件,增加对WinJS的引用
4. 在package.appxmanifest中设置启动页面为网站启动页的相对路径
5. 完成Logo、显示名和描述等信息,然后执行编译即可
6. 当然测试是少不了的
提示:经过转换的程序是以原生App的方式运行而不是运行在嵌入浏览器内,这意味着测试工作需要重点测试页面跳转等浏览器相关的内容。
当然,为了充分利用平台特性,提供更好的用户体验,仔细阅读并合理使用WinJS的手册、Windows设计指南和Swiss Design(Windows 8的设计风格)相关文档才能让你的程序拥有真正的Windows 8 Style!
结语
TechEd 2012已经闭幕,而App时代的大门才刚刚打开。做为一个拥抱变化的开发者,关注业界的发展合理规划自己的知识技能才是王道,这也许才是我们参加TechEd的核心目的吧。