作者:
Andy Wigley
Daniel Moth
blog:www.danielmoth.com/Blog
Peter Foot
In The Hand公司
建立32feet.NET共享源代码社区项目
blog:www.peterfoot.net
Rob Miles撰写第13章
译者:
张大威
主页:http://www.david-zhang.net/Default.aspx
示例代码:www.microsoft.com/mspress/companion/9780735623583/
配套内容:www.microsoft.com/learning /supoort/books/
第一章
1.工具
Visual Studio
SharpDevelop:www.sharpdevelop.net
Platform builder 平台生成器 //msdn.microsoft.com/embedded/default.aspt
2.操作系统
windows ce是一个模块化的操作系统,windows mobile是以windows ce为基础而构建的,windows mobile 系列是windows ce的特定实现,使用了他们需要的模块,然后为他们添置特有的软件和标准附件。
不同之处:
1) shell【外壳】是一套用户接口组件,他支持用户输入于操作系统行为之间基本的转换,windows ce通常使用标准的Windows 样式的图形外壳,不过给予windows ce 的平台可以有它自己独特的外壳,可以针对某些设备和他的最终用户进行开发和定制提供人机交互体验。而windows mobile外壳工作方式不同,ppc触摸屏,没键盘,smartphone没有触摸屏,有键盘,支持单手操作。
2) 只有windows ce可以为定制的硬件编写程序,windows ce比windows mobile 更容易配置设备。
3) API(application programming interface应用程序编程接口)不同,类库不同,例如:mobile特有的Microsoft.WindowsMobile.Status命名空间下,包含各种系统状态项,如当前活动连接和ip地址、电池电量、屏幕方向、电话状态、媒体播放器信息等;Microsoft.WindowsMobile.PocketOutlook命名空间。
托管类库调用托管代码,平台调用服务(Platform invocation Service,PInvoke),mobile和ce的API有许多不同。
开发者需要注意的地方:.NET Compact Framework的版本;注册表(registry)修改,文件存储。
.NET Compact Framework是完整版.NET Framework的子集。
3.显示和布局
纵向和横向显示创建UI,需要停靠(docking)和定位(anchoring)功能。还要考虑自动滚动条、不同分辨率的处理方法、键盘的支持。
移动应用程序中需要注意的问题:网络连接的不可靠;安全性;GUI的适用性。
4.使用社区资源
msdn论坛
移动开发中心(Mobile Development Center)新闻组http://msdn.microsoft.com/mobility/community/newsgroups/default.aspx
Microsoft patterns & practices的移动应用程序构建块(Mobile Application Blocks)是Mobile Client Software Factory(可下载)免费产品的一部分 主页:www.codeplex.com/smartclient
OpenNETCF的Smart Device Framework(SDF) 1.0版免费,有完整源代码,学习构建优良类库的好资源,通过PInvoke调用Microsoft Win32 API。1.4版免费下载www.opennetcf.ofg。2.0需要付费
另注:大型移动设备制造企业:Intermec 易腾、Symbol 讯宝
移动开发者注意:电话网络的数据传输的高昂费用、较低的传输速度、不可靠的网络连接
软件开发过程:设计、开发、测试、生成、错误跟踪及解决