随着移动通讯的发展,移动应用软件的需求也随之升温,目前移动应用软件开发工具有C++、eMbedded Visual C++、eMbedded Visual Bsiac以及J2ME系列
.NET开发技术
在介绍Compact Framework之前需要说明一下,由于微软公司的 .Net Framework 和Visual Studio .Net 已经正式发布了一段时间了,所以在这里我们就不再就整体的 .Net架构和 .Net Framework 加以介绍了,各为读者朋友如果不了解 .Net 的话,请浏览http://www.microsoft.com 。所有的关于.Net Compact Framework 的介绍均是基于 Beta1版本。
.Net Compact Framework 简介 .Net Compact Framework(Beta1),顾名思义,即紧缩版的.Net 开发框架。他和Smart Device Extensions (SDE) for Visual Studio .NET 一起,将更强的开发能力和强大的编程平台带到了手持设备的开发工作中。.NET Compact Framework 是一个硬件无关的运行环境,他主要用在手持设备上,包括:个人数据助理(PDAs) ,移动电话,机顶盒和各种运行Window CE .NET操作系统嵌入式设备。需要注意的是目前你使用.NET技术作出的程序只能在Windows系列平台上使用,但是现在Ximian公司(Linux上著名的XWindow系统GNOME的制造商)正在推行一个在Linux平台上支持.NET 的项目MONO(http://www.go-mono.com)相信不久的将来,.NET程序一样可以在非Windows的操作系统上运行。
The .NET Compact Framework包括一部分 .NET Framework 类库和部分 .NET Compact Framework 所独有的类库。他继承了所有的.NET 框架结构中的中间语言运行时和受管代码执行。
The .NET Compact Framework 提供了下列关键功能:
· 程序的硬件与操作系统无关性
· 支持公共的网络协议,无缝连接XML Web services.
· 无论开发者的目标应用或组件是提供给大范围的设备还是几个特殊的设备,他都提供一个统一的模型
· 提供了有助于设计和优化有限的系统资源的功能
· 包含最优性能的产生本地代码的运行时编译器
.NET Compact Framework 的平台结构
.NET Compact Framework 的平台结构图 |
.NET Compact Framework 提供了对设备上的本地操作系统进行直接存取的功能。你可以有选择的的调用本地API。你可以同时运行受管的和本地的应用。
.NET Compact Framework的类库是.NET Framework中类库的一部分,一些基本类库如
System,System.IO,System.Drawing,System.Net,System.Security,System.Web,System.Xml等都是.NET Framework中的类库。由于篇幅有限,这里我们就不再就类库进行介绍了,有些类库我们会在开发实例中进行简单说明。
与.NET Framework的比较 我们主要从相同点和不同点两个方面来说明一下这个问题。
相同点:
中间语言运行时 中间语言运行时包括受管代码执行、运行时编译器和垃圾收集。他们都遵循通用语言定义 (CLS)。.NET Compact Framework的 运行时的大小大约是整个 .NET Framework 运行时的12%。
装配和文件格式 所有的Framework的应用都使用装配(assemblies). 两种Frameworks 都为PE文件格式,都包括微软中间语言和定义 .NET Framework 应用的元数据。
多语言支持 跨语言支持集成在了 .NET Compact Framework中。
通用数据类型系统 线程模型 两种Framework 都提供了使用主机系统的时序机制的多线程编程模型。
标准 两种Framework的核心技术都提交给了欧洲计算机产业协会(ECMA)。
不同点:
类库 在这方面Compact Framework就小的多了,只有一些基本的类库。而.NET Compact Framework中所独有的类库主要集中在红外数据传输(System.Net.Sockets命名空间下)和SQL Server CE的数据库操作(System.Data.SqlServerCe命名空间下)两部分。这两部分的类库是.NET Compact Framework所特有的,在.NET Framework中是没有这两部分内容的。
内存管理 .NET Compact Framework通过电池管理、更快速度的动态内存文件存取、最小工作区只需128 KB 到 1 MB 的动态内存和优化的硬件驱动等几种特性优化了整体系统性能。 如果系统内存缺乏时,.NET Compact Framework将会强制的释放现在运行的代码不需要的部分数据,即使在低内存状态下,程序仍然可以运行。
全球性 由于.NET Compact Framework 可以使用的资源远比完整的 .NET Framework少,所以他的本地化和全球化应用可以使用的资源大大减少,这部分内容主要依赖于所使用的操作系统。第一版的.NET Compact Framework 提供了下列全球化支持:
· 可以处理所有Windows CE .NET 和Pocket PC 2002 所支持的所有文化、语言、地区的日期和字符。
· 本地化的违例信息(Pocket PC 2002支持的语言)
安全特性 在第一版本的.NET Compact Framework中,安全政策采取了一种开放式的政策,所有的代码都具有全部权限。.NET Compact Framework 提供了部分The .NET Framework的 System.Security.Permissions 和 System.Security.Policy 的类库。.NET Compact Framework 并没有全面的提供密码服务,基于角色的安全性和基于区域的安全性。代码权限界别和各种安全特性计划在将来版本加入。
查看本文来源