2010-05-11 44 views
13

我是一名学习Java EE的.NET开发人员。这两个概念似乎在任一系统中都具有相同的确切目的。.NET属性与Java注释:哪个先到?

那么,哪个框架得到发明他们的荣誉?

+3

真的很重要吗? – mdma 2010-05-11 02:01:04

+2

我只是好奇。 – 2010-05-20 19:08:19

回答

12

.NET metadata是,我相信,在.NET 1.1介绍了发布2003 4月3日(这似乎是已经在之前?)。 Java annotations于2002年3月19日被提议为JSR-175,于2004年9月30日获得批准,并成为当天发布的Java SE 5.0的一部分。

目前还不清楚究竟何时提出了.NET元数据,但当谈到第一个版本时,.NET获胜。

8

我相信他们第一次使用.NET;接下来是Java 5。

Java已经不幸被上语言improvents的 落后尽管 事实上,它是C#语言是 蓝本。

Pierreten的评论是正确的,但我认为有一些解释几个因素:

  1. 的Java比.NET, 较长的传统和落后的保持 兼容性是一个高优先级
  2. Java社区流程需要更长时间才能达成共识;如果微软认为需要某项功能,则不需要任何此类共识。
  3. Sun的财务下滑和Oracle最终购买意味着可用于Java的资源较少。太阳已经失去了推动Java向前发展的思想(例如Bill Joy,James Gosling)。 Anders Hejlsberg和Eric Lippert仍在微软工作。

(埃里克利珀left Microsoft in Jan 2013加入Coverity的。)

+0

不幸的是Java已经落后于语言改进的曲线,尽管事实上它是C#语言模仿 – Pierreten 2010-05-11 01:49:54

+0

的感谢背景信息duffymo;我认为会有相当数量的政治发挥 – Pierreten 2010-05-11 18:50:17

+1

Eric Lippert现在已经离开了MS。 – DanT 2013-04-30 08:30:46

16

属性自创建以来一直是CLR的一部分。我从1999年11月打印出来的C#的旧版本的预发布规范描述了它们,但我能找到的最早参考文献是C# 1.0 spec from 2001。这显然是在功能被添加到Java之前的几年。

编辑:该书C# Programming with the Public Beta于2000年出版,并提及属性。

+0

+1为实际资源。这是早期的btw! – BalusC 2010-05-11 02:41:04