概述:学习怎样将组件化开发(CBD)和多层设计应用到移动解决方案中。很多PC应用程序设计的知识能够应用在Pocket PC应用程序中,本文将解释为什么以及怎样做到这些。
适用于:
Microsoft® .NET Compact Framework 1.0
Microsoft Visual Studio® .NET 2003
随着新的技术品台的诞生,程序员社区经常会提出新思想和方法来在新的品台上实现应用程序。但是同时,很多众所周知的传统平台设计被遗忘,有时候重新使用。如果你是一个富有经验的PC程序员,那么本文可以使你认识到你已经具有的知识,如果你刚刚开始开发Pocket PC应用程序,你会从PC应用开发的经验中获益匪浅。
本文中“组件”一词大多数情况下可以用“DLL”来替换。
PC程序员很熟悉三层设计的思想。这三个基本层是:
各层的名字通常有和上面所不同,视情况而定,但是各层的作用则基本上都是标准化了的。
用户接口服务层实现了表示形式(窗体、按钮等)和表示逻辑(导航、窗体退出条件等)。业务逻辑服务层实现了应用程序的大多数逻辑(业务规则等),而数据服务层则主要关心向数据库获取和存贮数据以及进行其它存贮操作(查询、添加、更新以及删除)。在这种简化归纳中,数据服务层还包括对信息以结构化和永久的形式的实际存贮,而通常这是由数据库引擎来完成。更多具有更多层次的各种设计都可以从这个模型派生出来。
很多Pocket PC程序员认为这样的设计对他们来说没有用。其中的一个原因是程序员们认为对于如此小规模的应用程序没有必要将其分层来实现。很多人都视Pocket PC应用程序比PC应用程序简单。其实他们被那小小的屏幕给愚弄了。用更有效的方法来设计用户界面(更少的控件、简单的输入方法等)是非常有必要的。程序员也许认为将一个程序用单一的一个二进制文件来表示会节省设备的内存。但是请注意大多数早期的Pocket PC应用程序被设计为能够独立在PC上运行,而程序与设备的集成并不是多大的问题,特别在客户端。如今,许多Pocket PC应用程序借助了大量的通用控件的功能,更不用提操作系统本身了。
多层设计的优点: