写点什么

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

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

关注

评论

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

技术人小故事-团队愿景篇-第1段

Ian哥

28天写作

架构师第 4 课作业及学习总结

小诗

「架构师训练营第 1 期」

架构师训练营 1 期 - 第 十四周总结(vaik)

行之

「架构师训练营第 1 期」

腾讯T3面试官透露!360°深入了解Flutter,聪明人已经收藏了!

欢喜学安卓

android 程序员 面试 移动开发

SpringBoot系列1——概述和快速入门

程序员的时光

springboot 七日更 28天写作

牛啤了!阿里技术官整理的这份《Java面试手册5000题》已经成功让数百名社招生“圆梦BATJ”

Java 编程 面试

架构师第 3 课作业及学习总结

小诗

「架构师训练营第 1 期」

28天瞎写的第二百一二天:一次删库没跑路的故事

树上

28天写作 删库

SafePoint 与 Stop The World 全解(基于OpenJDK 11版本)

AI乔治

Java 架构 jdk JVM

生产环境全链路压测建设历程 24:FAQ 5、6负载均衡、如何不影响正常业务?

数列科技杨德华

28天写作

【薪火计划】08 - 非暴力沟通

码字与律动

管理 28天写作

职业成长就是一个逐渐“变帅”的过程

L3C老司机

写在再次学习python之前-why篇

赵开忠

Python 28天写作

kill -9 导致 kafka 重启失败的惨痛经历!

AI乔治

Java kafka 架构

手把手教你如何巧用Github的Action功能

flutter android 持续集成

芯片破壁者(二十四):1987战役启示录

脑极体

资深大牛带你了解源码!阿里内部Android笔记火爆IT圈,醍醐灌顶!

欢喜学安卓

android 程序员 面试 移动开发

MySQL中的哥哥表、妹妹字段,是什么鬼?

Java MySQL 数据库

缓存穿透,缓存击穿,缓存雪崩

en

redis 缓存穿透 缓存击穿 缓存并发

意识会在哪个早晨降落——「幻想短篇1/28」

道伟

28天写作

LeetCode题解:17. 电话号码的字母组合,BFS,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

CSS10 - 盒子模型&常用无序列表样式

Mr.Cactus

html/css

架构师训练营第 1 期 - 第 12 周 - 命题作业

wgl

架构师训练营第 1 期

区块链的前世今生(1)

抗哥

【计算机内功修炼】三:一文彻底理解IO多路复用

码农的荒岛求生

epoll

记一次JVM OOM 实战优化

AI乔治

Java 架构 JVM OOM

网络工程师职业指南

谬误词典:置信度

lidaobing

随机漫步的傻瓜 28天写作 谬误词典

jstat使用实用教程

JavaPub

Java JVM

架构师训练营第 1 期 - 第 12 周 - 学习总结

wgl

「架构师训练营第 1 期」

【Node.js】静态页面和简单的路由

德育处主任

大前端 Node 28天写作

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