69、Windows 8 与 Windows Phone 8 开发代码共享技术解析

Windows 8 与 Windows Phone 8 开发代码共享技术解析

1. PCL 项目的权衡

在 PCL(Portable Class Library)项目中共享代码的主要好处是,Visual Studio 编辑器会自动确保你编写的代码能够跨平台移植。当需要从 PCL 项目中调用非移植性代码时,可以采用本节介绍的技术,但会增加一定的复杂性。如果在 PCL 项目中频繁使用这种技术,建议考虑使用共享源文件。

此外,还有两种有助于实现可移植代码与特定平台功能交互的技术:
- 事件机制 :如果从 PCL 项目中调用的特定平台功能是“即发即忘”型(不返回数据或不需要数据),可以在可移植代码中创建一个事件,并在特定平台项目中注册该事件,然后将特定平台功能包含在应用程序事件处理程序中,而不是定义抽象类。
- 委托类型 :如果希望 PCL 项目执行某些计算并回调到特定平台代码,可以使用委托类型。但要确保计算的所有输入和输出都是 PCL 兼容类型。

2. 链接文件与条件编译

便携式类库只能针对库所创建的平台上可用的 .NET 类型的交集。不过,由于 Windows Phone 支持 Windows 中可用的一组 Windows Runtime 框架,因此在某些情况下,可以在便携式库之外的两个平台的应用程序之间共享大量代码。Visual Studio 提供了链接文件这一技术来实现这种代码共享。链接文件类似于文件系统中的符号链接,它使单个物理文件能够逻辑上存在于多个项目中。在 Windows 项目和 Windows Phone 项目之间链接文件后,只需在一处编写代码,即可在两个项目中自

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值