写点什么

64 位的 Mac OS X 也有 Windows.Forms 了

  • 2018-03-04
  • 本文字数:756 字

    阅读完需:约 2 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Mono 长期以来一直为 Linux、Mac 和 Windows 提供 Windows.Forms 的纯 C#实现。随着技术潮流的变化,Mono 的 Windows.Forms 平台仍然没有得到很好的发展,还只是各种第三方库和应用程序的依赖,这使得它的重要性超过了那些基于 WinForms 的应用程序。Mono 默认切换到 64 位,给 MacOS 对 Windows.Forms 的持续支持带来了问题,因为这个支持是建立在 32 位版本 Carbon 的基础之上的。

为了弥补这个差距,Mono 的 Miguel de Icaza 最近在研究如何改进MacOS 的支持。他最初的选择要么是利用64 位版本Carbon 提供的API,要么是尝试用Xamarin.Mac 在Cocoa 之上构建新后端。对64 位版本Carbon 的初步研究表明,Windows.Forms 的API 文档很差劲,很难看出64 位版本能做些什么。于是,de Icaza 开始尝试使用Xamarin.Mac。

幸运的是,de Icaza 把他的开发公布于众,这让Filip Navara 有机会注意到他在做的事。然后,Navara 联系了de lacaza,提到他在做的一个项目也许对这个新尝试有帮助。Navara 提供了一个现成的Cocoa 后端,可以重新规划后用在Mono 上。Navara 的代码来自Mono SWF,它为Mono 构建了可用的Cocoa 后端。

至此,de lcaza 决定把这些代码作为新64 位版本的实现基础,在MacOS 上支持Mono 的Windows.Forms。在审查代码时,de lcaza 注意到,对于某些控件,代码中使用了本地AppKit。它也用到了System.Drawing 的定制版本,这个版本最初是Mono 为iOS 用户开发的。

查看英文原文: Windows.Forms Comes to 64-bit Mac OS X


感谢薛命灯对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2018-03-04 18:004471
用户头像

发布了 199 篇内容, 共 91.3 次阅读, 收获喜欢 295 次。

关注

评论

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

如何优化UI自动化测试流程?

测吧(北京)科技有限公司

测试

从视觉识别到动作推荐:UI自动化测试的完整技术链条剖析

测吧(北京)科技有限公司

测试

云手机实现全方位的海外舆情监测

Ogcloud

云计算 云手机 海外云手机 云手机海外版 舆情监测

谷歌SEO优化技巧:外贸独立站关键词的筛选与挖掘

九凌网络

俄罗斯淘宝代购系统丨淘宝代购集运系统PHP

tbapi

淘宝代购系统 淘宝代购集运系统 俄罗斯淘宝代购系统

做市机器人招代理

区块链技术

数字先锋| 望闻问切更有“数”!

天翼云开发者社区

云计算 云平台

"使用PAI实现涂鸦变大作"AIGC活动重磅来袭!

阿里云大数据AI技术

AIGC

电商如何利用smallredbook.item_get_video API提升购物体验

技术冰糖葫芦

API 接口

软件测试学习笔记丨闭包与装饰器

测试人

软件测试

GaussDB(DWS)运维利刃:TopSQL工具解析

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 华为云GaussDB(DWS)

为什么要对数据库优化

小魏写代码

全球IT外包的趋势与发展

Ogcloud

外包 IT IT外包 IT外包公司 IT外包服务

IT外包怎样帮助企业控制成本?

Ogcloud

IT IT外包 IT外包公司 IT外包服务 IT外包企业

软件测试学习笔记丨性能测试工具JMeter 基本使用

测试人

软件测试 测试开发

谷歌SEO外链怎么做:初学者入门指南

九凌网络

重磅!云智慧推出轻量智能化服务管理平台轻帆云

云智慧AIOps社区

ITSM ITSM软件 ITSM解决方案 工单管理系统 工单管理

长查询问题,TDengine 终于攻克了!

TDengine

tdengine 时序数据库

ENNOVI推出ENNOVI-CellConnect-Prism

财见

如何利用API接口进行高效的商品变体管理?

Noah

亚马逊云科技在中国区域推出Amazon Network Firewall

财见

为什么 ERC-20 代币钱包的开发会改变代币化经济的游戏规则?

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

详细的Java学习指南,java高级面试题库

程序猿忙什么

⏳大咖直播预告 | 数据库系统访问控制『面面观』

KaiwuDB

数据库

64位的Mac OS X也有Windows.Forms了_.NET_Jeff Martin_InfoQ精选文章