写点什么

.NET/Mono 里的跨平台类库

  • 2011-05-17
  • 本文字数:644 字

    阅读完需:约 2 分钟

为了解决.NET/Mono 生态系统的平台分化问题,微软开发了一个名为 Portable Library Tools 的扩展工具。这个工具允许相同的编译好的类库运行在.NET 4.0、Silverlight、Xbox 360 和 Windows Phone 7 上。微软正在和 Mono 合作为 MonoTouch 和 Mono for Android(译注:原文此处为 MonoDroid,但由于版权方面的问题,MonoDroid 已经更名为 Mono for Android)提供支持。

在创建一个新的“可移植类库”时,开发者需要决定这个类库将会运行在哪些框架上。一旦做出了选择,只有那些在所有选择的平台上都能用的 API 才可以使用。具体可用的类和方法列表可以在 Visual Studio 的 Object Browser 里看到。

Portable Library Tools 要求项目引用一组特殊的类库,而不是通常和平台相关的那些类库。受平台支持的API 列表 API 的更改可以在 MSDN 上找到。Mono for Android 和 MonoTouch 的 API 没有显示出来,根据 David M. Kean 的说法,这些会在以后提供支持。

这个工具并非支持所有.NET/Mono 平台。举个例子,“没有任何计划为.NET Compact(在 Windows Phone 和 Xbox 之前的)或者.NET Micro 框架提供支持”。也不会为旧版本的全功能的.NET 框架提供支持,因为这需要对运行时进行很大的改动。

这个工具的一个重要限制是你只能访问所有选择的平台都支持的 API。这意味着你无法像为每个目标平台创建独立的 DLL 那样,通过编译器常量有选择性地启动某些特性。微软正在研究通过反射和迟绑定来“开启”额外特性的可行性,但至今没有任何明确的计划。

查看英文原文: Cross Platform Libraries in .NET/Mono

2011-05-17 06:302388

评论

发布
暂无评论
发现更多内容

写在日更之前,持续书写,见证文字的力量

boshi

随笔 随笔杂谈

40 张图带你搞懂 TCP 和 UDP

编程 程序员 大前端 后端 网络

阿里云在应用扩缩容下遇到的挑战与选型思考

阿里巴巴云原生

阿里云 Kubernetes 容器 云原生

1. 揭秘Spring类型转换 - 框架设计的基石

YourBatman

Spring Framework 类型转换 Converter

区块链系统面临哪些风险以及有哪些防范措施

CECBC

区块链

金融科技带来套利?专家认为监管应关注平台垄断、权力滥用等问题

CECBC

金融科技

LeetCode题解:455. 分发饼干,贪心for循环,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

架构师训练营第一期-第十周学习总结

卖猪肉的大叔

极客大学架构师训练营

shell脚本的使用该熟练起来了,你说呢?(篇二)

良知犹存

Shell

软件架构指南

码语者

软件架构

盘点c++几种常见的设计模式及具体实现

linux大本营

c++ Linux 后台开发

架构训练营 - 第10周课后作业 - 学习总结

Pudding

微博和B站屏蔽马保国相关信息:自媒体蹭热度要适可而止

石头IT视角

完了!这57道面试题(美团、BAT、携程),我咋一个都不会?

比伯

Java 程序员 架构 面试 计算机

划重点!DWS开发的五大要点

华为云开发者联盟

数据库 sql DWS

Jenkins使用ansible时出现!unreachable错误

Griffenliu

【经验分享】打破CMDB认知误区,掌握建设关键!

嘉为蓝鲸

运维 运维自动化 数据可视化 CMDB 配置信息

小白也能看懂!教你如何快速搭建实用的爬虫管理平台

华为云开发者联盟

Python Docker jenkins

架构师训练营 - 第 10 周课后作业(1 期)

Pudding

基于区块链的区域股权市场创新试点

CECBC

区块链

【Linux开发】编写属于你的第一个Linux内核模块

程序员小灰

c++ Linux 后台开发 架构师 服务器开发

anyRTC 11月SDK更新

anyRTC开发者

flutter uni-app WebRTC RTC sdk

京东成立探索研究院,打造产业数智化首个源头性科技高地; AI 论文:让机器像人类一样感知三维真实世界

京东科技开发者

人工智能 云计算

一个神奇的bug:OOM?优雅终止线程?系统内存占用较高?

华为云开发者联盟

sql jdk OOM

阿里技术专家熬夜一个月肛出内部“微服务学习笔记”,太完美了

小Q

Java 学习 编程 面试 微服务

架构师训练营 - 第 11 周课后作业(1 期)

Pudding

根治可扩展、高可用、高性能“神器”:SpringCloud+Nginx高并发编程手册

Java架构追梦

Java nginx 架构 面试 微服务

京东11.11大促背后,那些系统架构经历了些什么?

京东科技开发者

数据库 云计算 云服务

架构师训练营第一期-第十周课后作业

卖猪肉的大叔

极客大学架构师训练营

优秀商业可视化大屏(BI)设计演示

Marilyn

UI 商业智能

消防物联网,为逆行英雄守住第一道生命线

华为云开发者联盟

物联网 控制 消防

.NET/Mono里的跨平台类库_.NET_Jonathan Allen_InfoQ精选文章