10 月 23 - 25 日,QCon 上海站即将召开,现在大会已开始正式报名,可以享受 8 折优惠 了解详情
写点什么

MonoMac 为 Cocoa 开发提供了.NET 风格的 API

  • 2011-03-31
  • 本文字数:621 字

    阅读完需:约 2 分钟

MonoMac ,为 C#在 OS X 上创建 GUI 工具包的最新尝试,已经发布 1.0 版本了。MonoMac 的设计会更多地和其它.NET/Mono 类库保持一致。这是通过为 Cocoa API 提供一层遵循.NET Framework Design Guidelines 的厚的包装做到的。

早期的类库,比如 MonObjc 和已经废弃的 CocoaSharp 使用了瘦的,通常在 Cocoa API 上机械生成的交互层。这要求使用 selector ,这是一种 Objective-C 使用的 OOP 消息传递方式。这些类库没有把 selector 映射到 C#的基于方法的面向对象编程方式,而是简单地提供了一系列 objc_msgSend 函数。而所需的 objc_msgSender 的版本则依赖于参数和返回值类型,有时候还依赖于 CPU 架构体系。

使用包装原生代码的类库之外的一个选择是使用跨平台工具包。这里提供的选择都是熟悉的。Gtk#和已经废弃的 Windows.Forms 都简单易用,但不能创建原生用户界面的应用程序。此外还有 Silverlight,它鼓励你重新定制应用程序的用户界面风格而不是试图模仿原生应用程序。

正如前面提到的,MonoMac 的设计理念是按照.NET 的规范尽可能多地提供 Cocoa 的特性。这意味着你可以安全地创建 Objective-C 类的子类,重写基类的方法以及调用基类的构造函数。客户端代码可以通过 Objective-C 风格的委托和.NET 风格的事件监听事件通知。.NET 里的委托、lambda 和闭包可以映射到 Objective-C 代码块

MonoMac 包含了发布到 Mac App Store 的支持。应用程序是通过 Mono 包装器打包给应用商店的,它包含了 Mono 运行时的副本,这样用户就无需另外下载了。

2011-03-31 06:041906

评论

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

Nacos 2.0 性能提升十倍,贡献者 80% 以上来自阿里之外

阿里巴巴云原生

微服务 开发者 云原生 dubbo 中间件

曾国藩:人生惟有常是第一美德

帅安技术

曾国藩 坚持 有常 天赋 成事心法

腾讯大神为什么会对这份“redis深度笔记”如此爱不释手?

Java架构师迁哥

云原生技术及可观测实践

滴滴云

你管这破玩意叫哨兵?

Java 数据库 redis 程序员 架构

2年进入苏宁,第5年入职阿里,专科学历的他是如何做到?

Java架构师迁哥

Substrate 合约书之合约模型

Patract

智能合约 rust polkadot Patract Wasm

交易所合约跟单软件搭建,火币合约跟单平台开发

一个极简的冲突管理工具

石云升

28天写作 职场经验 管理经验 4月日更 冲突管理

云存储中不可不知的五个安全问题及应对措施

云计算

函数计算助力语雀构建稳定且安全的业务架构

阿里巴巴中间件

文档 企业架构和云服务 业务架构

图查询语言的历史回顾短文

NebulaGraph

数据库 数据库设计 图数据库

【科创人】贝锐创始人陈宇晔:花生壳诞生自一次挫折,15年坚守有温度不作恶

科创人

Coinbase上市,对加密市场将带来哪些影响?

CECBC

货币

重读《重构2》- 改变函数声明

顿晓

重构 4月日更

iceberg查询加速原理

聚变

融云 CTO 杨攀:技术人员如何创业?

Yano

汽车之家基于 Flink 的数据传输平台的设计与实践

Apache Flink

flink

函数计算助力高德地图平稳支撑亿级流量高峰

阿里巴巴中间件

微服务转型系列2:微服务转型的三大误区,避坑指南

BoCloud博云

微服务

《彩食鲜 CTO 乔新亮:程序员如何从技术走向管理》(采访提纲)

这就是编程

浅析“分布式锁”的实现方式丨C++后端开发丨底层原理

Linux服务器开发

redis zookeeper 分布式锁 Linux服务器开发 C++后端开发

聊聊十种常见的软件架构模式

架构精进之路

4月日更

推荐25种自媒体运营必备工具 (建议收藏)

科技猫

工具 网站 分享 运营 自媒体

勇夺桂冠!百度智能云获山东电力输电人工智能技术竞赛第一名

百度大脑

百度智能云

区块链技术重新定义 物联网的物与物之间的交易

CECBC

发展空间

金融科技数据链的DNA

博睿数据

金融科技 博睿数据 数据链DNA

怎么拥有个人磁力

帅安技术

IP 个人磁力 KOL 思想 吸引力法则

Java开发9年经验,三轮技术面+HR面试成功砍下阿里巴巴Offer!

Java架构追梦

Java 阿里巴巴 架构 面试

Java该怎么学?阿里大佬呕心沥血之作,Java全线成长宝典,从P5到P8一应俱全

Java架构师迁哥

中国数字人民币试点有序扩大至“10+1” 拜登政府正加强研究数字人民币计划

CECBC

数字货币

MonoMac为Cocoa开发提供了.NET风格的API_.NET_Jonathan Allen_InfoQ精选文章