运输意味着优先排序

所以我得到了大量关于我的链接列表的反馈,这些反馈关于Java开发人员,他们对Apple很生气,关于Leopard的糟糕Java支持。我写

我不明白为什么有人(除了Java开发人员本身)会关心。

当然,几乎所有我告诉我的错误或傲慢(或两者都是)来自Java开发人员的消息。

这并不复杂豹子已经迟到了苹果最初声称它将在2007年的“上半年”发货它下滑了四个月,当他们不得不宣布失误时,他们得到了大量的负面宣传And, from what I can tell, talking to friends at Apple and judging by the developer seeds over the last few months, a lot of engineers at Apple have been working their asses off for a long time to get Leopard into the state it’s in today.

运输很难。

运送软件的唯一方法是确定优先级,并优先考虑放弃那些不太必要的东西以换取更重要的东西显然,对于Apple来说,Java 6并不是优先考虑的问题而且,据报道,即使Java 5对Leopard的支持比在Tiger上更糟,Java整体上并不是Apple的优先考虑事项。[更新:一些读者说有关Java 5对Leopard的抨击的报道被夸大了 -不同是的,但UI的变化是一种改进,至少在一些Java开发人员看来。

但它并不像苹果公司坐在一台顶级的Java-6-for-Mac-OS-X上并且不让它出于恶意他们只是决定在其他地方分配工程资源在Java的情况下,我认为它甚至不是一个接近的电话What should they have done? Delayed Leopard even further? Pulled engineering resources from something that没有ship with Leopard for Java? Java simply isn’t relevant to the Mac.

一些恼怒的Java开发人员建议,如果我是一个我个人关心的开发人员运行时,我会有不同的感受 - 如果Perl,Ruby或Python在Leopard中被丢弃或降级,我会感到愤怒But that’s not a good comparison; Perl, Python, and Ruby pretty much compile out of the box on Mac OS XApple不需要做太多 - 至少相对于Java - 将它们包含在Mac OS X中Why? Because that’s how these tools are designed and engineered — they’re made to “just build” on any Unix-like OS这不是Apple的责任,Java不是那样的 - 它是Sun的。

为了运送Leopard,Apple做出了各种妥协只看64位Carbon就是这样的当Leopard最初在2006年WWDC上宣布,但在2007年WWDC上被淘汰碳directly relevant to the Mac; it remains the foundation for many of the most popular apps on the platform如John Siracusa在他的Leopard评论中写道

最终,Apple做出了艰难的选择,而不是简单的选择我认为这会带来回报,尽管短期后果可能非常严峻毕竟,只要看看为Mac获得英特尔原生版Microsoft Office需要多长时间Should we expect a 64-bit Cocoa version in, say, 2012? And I have no idea what Adobe’s going to do about 64-bit versions of its products仅在这两家公司之间就有数百万行碳代码我们可能会陷入困境,所以要紧扣起来。

与放弃64位Carbon工作的决定相比,Apple决定放弃(或推迟,据我们所知,Java 6的工作很简单一些最重要的Mac软件依赖于Carbon没有重要的Mac软件依赖于Java。1


  1. Where by “no” I mean “some very small amount, and what small amount there is, I’ll wager still works as well on 10.5 as it did on 10.4”. ↩︎