Miguel de Icaza从开源到微软的旅程:'这是一个不同的公司'

“我觉得被证明(关于)单声道......事实证明Java是大问题'


与谷歌和苹果合作的挑战

Android和iOS是第三方平台。什么是与谷歌和苹果的关系是什么,你相信他们不要对你带来一些你无法努力的改变吗?

“我们已经与苹果家和谷歌家伙有很长一段时间。我们在任何人都知道它存在之前,我们会提前访问硬件。当他们正在进行新的Apple电视时,他们来到了我们,并表示我们需要你们来支持这件事,需要知道基础,而且我甚至无法告诉NAT,“De Icaza说。 “我们也有一个非常好的工程团队。”

“那里有很多共享的想法。苹果想要进入企业,C#是企业的奇妙语言。企业的iPad是天堂的婚姻。“

Apple要求开发人员在BitCode中向其商店提交应用程序的要求呢,LLVM编译链使用的中间格式? Apple正在为Apple Watch制作这个强制性,并且可以为IOS的其他版本做出这样做?

“我们已经长期生成了BitCode,”De Icaza说,“和Mono已经支持LLVM多年。使新位码要求具有挑战性的事情是我们修改了LLVM,支持C或C ++不需要的构造,其中最重要的是隐式异常的概念。 C或C ++具有这个概念,将在位码中明确地调用异常,但在.NET中可以隐式地引发异常,我们修改了位码以支持它们。“

示例是在尝试取消引用空指针时会发生什么,或者除以零。 “在C ++中,它只是,我们将崩溃。没有提出异常的概念。在单声道中,我们抓住了信号,然后我们放松了堆栈。纯粹位代码中的支持不存在,“De Icaza解释说。

“我们正在做两件事。一个人正在准备贡献,以便我们可以为LLVM人员获得支持。但采用需要时间。因此,我们在此期间需要做的是添加一个模式,我们使所有这些隐含的异常处理显式。现在它是在IOS和TVOS的预览中。“

随着Windows开发的下降,可以跨平台将C#返回主流?

“我肯定希望,”德伊加拉说。 “我们在2011年开始Xamarin。我们记得与C#和一些投资者说,嗯,C#已经死了,C#是遗产,世界已经搬到了HTML 5.我们发现有一个真正的开发人员有一个真正的渴望使用比Java和Object-C更好的高级语言。我们看到我们的市场从零到数以万计的开发人员增长。我认为C#肯定会增长。这是一个很好的投资仍然进入语言。“

微软现在拥有自己的自主商名版的开源和跨平台.NET,称为.NET核心,由.NET基金会监督,其中De Icaza是三名董事之一。在一些未来的一点,可能是单声道和.NET核心是一样的?

“我们正试图在尽可能多的地方收敛,但它不是很容易,”Icaza回复。 “我们做了低悬挂的水果。我们已更换了40%至60%。有很多困难的碎片。如果我可以减少内存使用情况,我想带头发动机。最终我们将整合这些碎片。“

在演变时呈现的开源.NET的时间表

在Evolve 2016上呈现的开源.NET时间表(点击放大)

当我们关闭时,De Icaza提到了他所谓的“可爱的轶事”来说明微软如何改变。 “Azure团队中的某人通过电子邮件发送给我们并说嘿,我们需要你们为这个特殊的东西发布单声道,我们只需要这个错误修复。我们说这是什么,他们说,哦,哦,它在Azure上运行服务。很高兴看到Microsoft实际上是在Linux上使用Mono来为Azure提供一些服务。最终他们应该移动到.NET核心,因为.NET核心是方式,方式更快。“

这是早期的日子,但与Icaza交谈提出了Microsoft可能不会粉碎Xamarin的精神。如果公司可以使这项工作,它将超越Windows的能力将基本上增强.®


咬住它的手©1998-2021