趁着黄金周的空闲,学习一下新的技术,好让自己的思维能跟上软件更新的脚步,这大概就是程序员所面对的现实吧。在这个黄金周里,我准备研究一下Visual Studio 2008中的移动开发部分。Visual Studio 2008目前还处在Beta 2的阶段,当年VS 2005的Beta 2,已经和日后我们看到的RTM版本相差无几了,但愿VS 2008的Beta 2也是这样。
VS 2008开发中集成的新移动开发工具并不少,最值得关注的是:.NET Compact Framework 3.5和SQL Server Compact Edition 3.5。需要解释一下的是,.NET CF并没有3.0版本,因为.NET Framework 3.0版本指的是WPF、WCF和WF,所以为了和桌面版.NET Framework相一致,.NET CF新版本的版本号是3.5。同样,SQL CE在改了N个名字之后,回归了CE的名字,SQL CE 3.5也是继SQL Mobile 2005(3.0)后的一次重要升级。#t#
.NET CF 3.5中最重要的两个组件是:WCF和Linq。.NET CF的 WCF组件可以访问WCF的Web Service,还可以支持基于Exchange Server邮件的WCF传输, Push Mail让WCF的功能更加强大。LINQ是一种通用查询工具,支持XML、数据库、对象的查询,在.NET CF中同样实现了LINQ的功能。
除此之外,.NET CF 3.5还支持托管的音频播放类,提供了SoundPlayer类播放多媒体声音。压缩功能,提供了System.IO.Compression命名空间用于进行数据压缩。VS 2008开发提供的单元测试等功能,我们在这里就不详细解释了。
下面我们通过在VS 2008开发中建立一个简单的移动应用程序来看一下,VS 2008开发在移动开发方面和VS 2005有哪些区别:在打开VS 2008开发之后,我们仍然选择File-New-Project菜单。选择Visual C#类型,我们可以看到WCF和Workflow两个类型,分别用来支持WCF和WF类型的应用。
我们选择的是Smart Device类型,在这个类型里,只能选择Smart Device Project。在之后弹出的对话框中,我们可以看到不同类型的移动应用:设备应用程序(Device Application)、类库(Class Library, DLL)、命令行应用程序(Console Application)、控件类库(Control Library)和空工程(Empty Project)。选择程序类型后,我们还需要选择目标平台(默认为Windows Mobile 5.0)和.NET CF版本,在下拉菜单中(如下图红色区域),我们可以选择.NET CF 3.5和.NET CF 2.0。在VS 2008开发中并不支持.NET CF 1.0,这是一个颇具争议的决定,之前在微软产品组的BLOG上也发起过投票。考虑到Windows Mobile 6.0的ROM中已经内置了.NET CF 2.0,这种决策似乎正确。不知道这个决定是否会引起开发者需要同时安装VS 2005和VS 2008开发,在不同开发环境中维护相同代码。