2010-03-12 81 views
3

我在做一些研究,软件工程的基本主题和我穿过Java Community Process website传来:为什么没有.NET社区过程?

的JCP是 开发标准技术 规范Java技术的机制。 任何人都可以在网站上注册,并 参与审查和对Java规范 请求(JSR)提供 反馈,任何人都可以注册 后成为一名JCP成员,然后 参加一个 JSR对专家组或甚至提交自己的JSR 提案。

对我来说这似乎是一个好主意,并且在JCP网站上有很多写得很好的规范和参考实现。

那么为什么没有.NET社区过程呢?这是微软可以或应该开始的事情吗?也许他们可以将它安装在Codeplex.net上,并将密钥交给社区。

回答

10

因为诚实地说,试图让社区过程完成任何事情需要永远。我相信这就是为什么C#赶上Java的原因;微软控制整个过程,因此可以比Sun更积极地做出改变。

并不是说社区过程是一件坏事,只是它有其不利之处。

+0

无论是倒下还是放倒取决于你喜欢语言变化的程度。 – reinierpost 2010-03-12 23:04:53

0

我想它归结为公司文化和语言的目的。 Java从一开始就打算成为一个跨平台的平台......可以针对并期望您的软件能够在多种操作系统上工作。任何使用JVM的东西,真的。

Microsoft不支持跨平台兼容性。据称,MS甚至试图hijack Java和turn it into a Microsoft-only platform。当它失败时,他们改为建立.NET框架

回想一下:Sun希望鼓励社区在可能的最大数量的平台上支持Java采用,以便他们与社区一起工作。微软希望看起来对大型社区友好,因此他们可以容忍像Mono这样的项目,但他们并不希望它获得足够的吸引力来与自己的实施竞争。为了确保这一点,他们必须尽可能地跟上微软框架的实施难度,不要做任何可能导致不良公关的公开信息。

+2

太阳不复存在。甲骨文购买了它们,而且它们的成本并不高。我只是说。 – 2010-03-12 22:55:00

+0

我知道买断,但Sun DID在他们创建Java时存在。我看不出买断是如何与手头的讨论相关的 – rotard 2010-03-12 23:05:11

+0

@rotard - 看看它们的效果如何。当然,社区过程并不是太阳变得可以获取的原因。但在这种情况下,我发现尝试社区流程的公司已经不在了。 – 2010-03-12 23:17:11

1

因为作为公司实体的微软既不需要也不需要你的(或任何其他人的)意见。它强加自上而下的意愿,并可能会从自己的社区(例如MSDN)获得建议,但在一天结束时会做适合自己(及其股东)的事情。

当时Sun的PoV将会有效地通过涉及“社区”的方式让基层参与进来。这将形成一个可与微软竞争的关键群体。问题在于,在这个关键的群众阶段,社区的力量和所有权意识并没有消失,它只是意味着你有更多的人有更多的矛盾意见。结果:Java开发随着时间的推移而减慢。