在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

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:004692
用户头像

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

关注

评论

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

WorkPlus AI智能客服解决方案,提升企业服务质量

BeeWorks

支撑核心系统分布式改造,GaussDB为江南农商银行筑稳根基

华为云开发者联盟

数据库 分布式数据库 后端 华为云 华为云开发者联盟

新书上线 | 《使用 NGINX 部署和保护 Kubernetes Ingress Controller》中文版

NGINX开源社区

nginx Kubernetes API NGINX Ingress Controller NGINX Service Mesh

全面升级!Apache HugeGraph 1.2.0版本发布

百度安全

原来阿里字节员工简历长这样

云舒编程

简历模板 简历 应届生 大厂面试】 #面试

万字图解 | 深入揭秘HTTP工作原理

云舒编程

多路复用 HTTP web socket QUIC 图解网络

图像处理-Java-指定大小压缩

alexgaoyh

Java 图像处理 图像压缩 压缩算法 指定大小

Footprint 的卓越资金流数据揭示加密货币的神秘叙事

Footprint Analytics

区块链 数据分析 加密货币

软件测试学习笔记丨JMeter使用代理录制脚本

测试人

软件测试

软件测试学习笔记丨Grafana安装

测试人

软件测试

AppLink让你的电商运营财务管理自动化

谷云科技RestCloud

零代码 APPlink 自动化集成

MySQL并发插入导致死锁

云舒编程

MySQL 并发 死锁

日志资源成本减少35%:新东方可观测体系改造如何降本增效?

TakinTalks稳定性社区

这一年我们上线的运维自动化系统

37丫37

DevOps 运维 自动化 工具 开发.

近6成金融机构的选择!华为云GaussDB加快金融核心系统转型

华为云开发者联盟

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

实力认可!TDengine 在“2023 年度金猿季”两大榜单中脱颖而出

TDengine

tdengine 时序数据库

万字图解 | 深入揭秘Linux 接收网络数据包

云舒编程

数据包 中断 网卡 linux\ ringbuffer

有了这张微积分知识地图,你可能会爱上高数!

博文视点Broadview

大数据处理流程包括哪些环节

悦数图数据库

大数据处理流程

一分钟了解Wireshark的数据包

小齐写代码

探索技术的无限可能-云原生计算2023年度奖项

字节跳动云原生计算

大数据 云原生

1688店铺详情数据接口python

tbapi

1688 1688API 1688店铺详情数据接口 1688店铺详情数据采集

如何让你的.NET WebAPI程序支持HTTP3?

不在线第一只蜗牛

Web 开发语言 http3 .NET 7

万字图解 | 深入揭秘TCP工作原理

云舒编程

三次握手 TCP协议 TCP四次挥手 MSL 滑动窗口

指标平台详解(下):第三代指标平台实现了哪些突破?

Aloudata

BI ETL 指标中台; 指标中台

第三届“新科技 星力量” 科技实践案例评选【获奖名单】揭晓

星环科技

大数据 科技 大模型 获奖

星环科技基于第五代英特尔®至强®可扩展处理器的分布式向量数据库解决方案重磅发布

星环科技

大数据 信创 科技 大模型

英特尔实现3D先进封装技术的大规模量产

E科讯

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