写点什么

Mono 将不会具备 Metro UI

  • 2011-09-28
  • 本文字数:1156 字

    阅读完需:约 4 分钟

Miguel de Icaza 提及:Xamarin 将不会把 Metro 导入其他平台,这会是 Linux 在桌面上失败的原因之一。对开发跨平台应用感兴趣的.NET 开发人员将可以使用 Mono 编写业务代码,并为其他平台重写 UI 代码。

为了确保不会误解 Xamarin 对于 Mono 和 Windows Runtime(WinRT)UI(Metro)的计划,Miguel de Icaza 在博客上宣称:他们“不会为Linux 开发WinRT UI,而且也没有计划要这么做。”De Icaza 认为:有可能使用一些Moonlight 代码将Metro UI 带入Mono,但是他觉得这么费劲不值得,表示出他对于Linux 的怀疑,认为Linux 可能无法跟上“其他消费者环境的成长”。

同一时间,Tim Anderson 在博客中提到 de Icaza 的一些话,这是在 BUILD 2011 的私人谈话中发生的。Mono 的创始人表示了他对桌面 Linux 当前状态的担心,而且直接暗示了 Mono for Linux 的走向:

老实话,对于桌面 Linux,开源的好处一直在对抗它,因为我们一直在出问题。不只是 Red Hat、Ubuntu、Suse 之间的不兼容,甚至同样的发布版本都存在问题。Ubuntu 从这周起就不在于 9 个月之前的版本兼容。而且还有多个版本,KDE 版本、Gnome 版本,拥有新启动系统的版本。 如果你算一下在 Linux 上有多少出色的桌面应用,大概也就 10 个左右。你使劲儿想想,也许能说出 20 个。这一路上,我们在每一步都成功地激怒了开发人员,API 总是出问题。

我的心都碎了,这是底线啊……

我想 Linux 在桌面上面临着困难,而且桌面也已经开始不再那么重要了。

所以,现在很清楚:我们不会看到跨平台的 Metro UI 了。这与 Mono 的方式相同,Mono 不打算把 WPF 导入到其他平台,因为需要太多资金和工作量支持。但是,如果 Mono 打算跨平台,使用什么样的 UI 呢?De Icaza 提出如下建议:

  • Windows 平台:WinRT、 Winforms、WPF(替代品:GTK#、Silverlight)
  • MacOS 平台:MonoMac(替代品:Gtk#、Silverlight)
  • Linux:Gtk#
  • Android:MonoDroid API
  • iOS:MonoTouch
  • Windows Phone 7:Silverlight
  • XBOX 360:基于 XNA 的 UI

为了编写跨平台应用,针对这么多平台要使用这么多不同的 UI,让人怀疑 Mono 是否还具有吸引力。De Icaza 认为:在应用的业务代码和 UI 之间有明确分隔还是有价值的,而且 Mono 的业务代码可以在所有这些平台上运行,开发人员只需重写 UI 部分。这样更好,因为原生 UI 代码让应用看起来更好,使用跨平台 UI 的要差些。

但是 Web 开发框架在崛起,比如 jQuery jQuery UI jQuery Mobile PhoneGap Sencha ,整体上有向 HTML5 和 web 技术发展的趋势,Metro 和 Windows 8 也强调了这个方向,这些让人开始思考 Mono 的空间还有多大,还有多少开发人员会选择 Mono 作为自己的跨平台解决方案。对于投入.NET 的开发人员来说,开发跨平台应用 Mono 还有吸引力,但是这样就足够了吗?

查看英文原文: InfoQ: There Will Be No Metro UI for Mono

2011-09-28 01:521916
用户头像

发布了 479 篇内容, 共 157.4 次阅读, 收获喜欢 49 次。

关注

评论

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

电脑有什么超简单的录屏方法

淋雨

视频剪辑 Camtasia 录屏软件

事件Event:带你体验鸿蒙轻内核中一对多、多对多任务同步

华为云开发者联盟

鸿蒙 任务 OpenHarmony 事件 LiteOS-M

我可以减肥失败,但我的 Docker 镜像一定要瘦身成功!

尔达Erda

Docker 开源 云原生 镜像 瘦身

名列GitHub必看榜!腾讯架构师纯手敲Spring Boot高级进阶笔记

Java架构追梦

Java 架构 腾讯 面试 springboot

Vue进阶(幺陆贰):vue render函数介绍

No Silver Bullet

Vue 7月日更 render

数仓是如何与“夏令时”愉快的玩耍!

华为云开发者联盟

数仓 时区 GaussDB(DWS) 夏令时 夏令

阿里云低延时直播 RTS 能力升级 让直播推流效果更佳

阿里云视频云

阿里云 音视频 直播技术 视频云

Ubuntu Server 20.04搭建Redis集群

玏佾

redis redis集群 搭建 redis cluster

视觉生产技术入门篇

若尘

视觉 7月日更

Redis on AEP 实践

BUG侦探

redis 傲腾AEP

面试官:order by 是怎样排序的?怎么优化?

一个优秀的废人

Java MySQL 数据库 后端 order by

华为云GaussDB(for openGauss)推出重磅内核新特性

华为云开发者联盟

高可用 华为云 内核 GaussDB(for openGauss) 存储引擎

从Encoder-Decoder模型入手,探索语境偏移解决之道

华为云开发者联盟

神经网络 ASR 语境偏移 CLAS ASR模型

【从零开始学爬虫】采集京东商品信息

前嗅大数据

大数据 爬虫 数据采集 采集商城 采集京东

网络攻防学习笔记 Day76

穿过生命散发芬芳

网络攻防 7月日更

深度解析HashMap底层实现架构

华为云开发者联盟

Java hashmap 底层 底层架构 Map接口

邮件误删不用怕,试试这个方法帮你找回来

淋雨

EasyRecovery 文件恢复 硬盘数据恢复

MySql 通过定义变量更新多表

Flychen

HarmonyOS Connect伙伴峰会重庆站举办 生态建设持续完善

科技汇

MapReduce的参数优化

大数据技术指南

7月日更

商业智能BI,会成为下一个风口吗?

瓴羊企业智能服务

阿里云 数据中台 数据分析 BI 商业智能

了解一下缓存分类、更新、清理策略以及如何处理缓存带来的风险

Jokay

缓存 缓存穿透 缓存击穿 缓存雪崩 缓存设计

测试开发之系统篇-常用系统命令

禅道项目管理

测试 命令 测试开发

从零开始学习3D可视化之3D界面

ThingJS数字孪生引擎

大前端 可视化 3D 3D可视化 数字孪生

ZooKeeper 分布式锁 Curator 源码 01:可重入锁

程序员小航

zookeeper 源码 分布式锁 curator

10分钟理解REACT概念

加百利

React 7月日更

干掉 Postman?测试接口直接生成API文档,这个工具贼好用

程序员小富

Java 编程 程序员 开发工具 大学生

北鲲云超算与传统的超算中心有什么不同?

北鲲云

ClickHouse大数据领域企业级应用实践和探索总结

王知无

爬虫入门到放弃02:如何解析网页获取数据

叫我阿柒啊

爬虫 CSS选择器 xpath lxml

科创人|决策易赵祝维:从满足应用需求到服务业务目标,从SaaS服务商到业务合作伙伴

科创人

Mono将不会具备Metro UI_.NET_Abel Avram_InfoQ精选文章