【QCon】精华内容上线92%,全面覆盖“人工智能+”的典型案例!>>> 了解详情
写点什么

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:041465

评论

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

字节算法大神手写的算法笔记,曾连续多次霸榜 GitHub Trending 首页

Geek_0c76c3

Java 数据库 开源 程序员 开发

C#使用Spire.PDF依赖,PDF转Word,Excel,Html代码分析

IC00

C# 学习 程序员 上位机 10月月更

Vue.$nextTick的原理是什么-vue面试进阶

bb_xiaxia1998

Vue

追求性能极致:Redis客户端缓存带来的革命

程序员小毕

Java 数据库 redis 面试 后端

Java开发培训机构怎样选择靠谱的

小谷哥

Android技术分享| Bugly 应用升级自定义UI

anyRTC开发者

android 音视频 UI 移动开发 Bugly

线下学习web前端培训可以吗

小谷哥

Vue是怎样监听数组的变化的?

bb_xiaxia1998

Vue

最后一块石头的重量

掘金安东尼

算法 10月月更

手把手教你入门Vue,猴子都能看懂的教程

知心宝贝

JavaScript 云原生 Vue 前端 可视化

实例分析Scheduled Thread Pool Executor与Timer的区别

华为云开发者联盟

线程 开发 华为云 企业号十月PK榜

特权账号管理系统是什么?是堡垒机吗?

行云管家

网络安全 堡垒机 账号安全 特权账号管理 特权账号

拿捏了!阿里2022最新JDK源码深度解析小册,Github全站热榜第二

Geek_0c76c3

Java 数据库 开源 程序员 开发

KubeEdge 1.12版本发布,稳定性、安全性、可扩展性均带来大幅提升

华为云开发者联盟

云计算 云原生 华为云 kubeedge 企业号十月PK榜

Go WEB进阶实战:基于GoFrame搭建的电商前后台API系统

王中阳Go

电商 Go web #go #开源 10月月更

厉害!年薪近百万架构师保姆式讲解的这份Spring源码笔记,绝绝子

Geek_0c76c3

Java 数据库 开源 程序员 开发

已献出膝盖!GitHub上的宝藏级SpringBoot核心文档,讲得太清晰了

Geek_0c76c3

Java 数据库 开源 程序员 开发

Serverless架构演进与实践

得物技术

云计算 架构 DevOps 云原生 10月月更

等保测评机构是什么意思?是什么性质的单位?

行云管家

公司 机构 等级保护 等保测评 等级测评

大数据ELK(二十三):Kibana简介

Lansonli

Kibana 10月月更

MobTech短信验证常见问题

MobTech袤博科技

sdk 短信验证

互联网寒冬之际,凭借这份10w字大厂Java面试真题汇总,半月斩获7个Offer!

Java永远的神

spring 程序员 JVM 多线程 Java 面试

首次公开!阿里巴巴最新高并发架构设计实录被我从Github扒下来了

Geek_0c76c3

Java 数据库 开源 程序员 开发

参加前端培训学习还值得吗

小谷哥

大数据开发培训学习费用多少呢

小谷哥

Github星标百万!终于有人将Spring技术精髓收录成册

Geek_0c76c3

Java 数据库 开源 程序员 开发

阿里新一代微服务,内部大佬手抄的笔记+脑图不容错过,全是精华

Geek_0c76c3

Java 数据库 开源 程序员 开发

STM32L051测试 (四、Flash和EEPROM的读写)

矜辰所致

EEPROM Flash STM32L051 10月月更

数据结构学习,链式队列

IC00

学习 数据结构 算法 学习笔记 10月月更

vue面试常见考察点总结

bb_xiaxia1998

Vue

java线下培训哪家比较适合小白学习

小谷哥

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