北京北大青鳥校區介紹:Java和.NET作為技術開發語言,多年來一直“明爭暗斗”,那么到底哪個更好?選擇哪個?北京北大青鳥校區認為這要取決于個人喜好和當地職業機遇。
1.Java SE 7遭遇.NET CLR會發生什么?
從Java SE 7的功能列表中可以看出,它相比以前版本有了長足提高。那么,它是一個游戲改變者嗎?在過去數年中,JVM和.NET CLR都發生了眾多改進;過去那些只有技術非常高超的程序員才能完成的許多事情,現在借助于JVM和.NET CLR的增強功能,普通程序員也能夠做得到。
盡管JVM和.NET CLR并非在同一個時間實現相同的想法,但是如果在一方出現了某個好的想法,另一方也會迅速跟進,這一點不僅僅體現在運行時層面上。舉例來說,對于Java來說,Hibernate項目取得了巨大成功后,.NET也迅速推出了NHibernate。而.NET的閉包(closures)功能深受眾多開發者的歡迎,Java似乎不久也將實現它們,當然,這是一個語言功能,而非運行時功能。 (北京北大青鳥校區)
2.在可以預見的未來,一個運行時是否會徹底擊敗另一個?
盡管從技術層面上JVM和.NET CLR非常相似,但它們都有自己的市場,兩者的靈活性都不是很強。如果一個人已經圍繞.NET服務器和IIS創建了他們的基礎架構,他不可能第二天醒來把所有這些遷移到Java,反過來也是這樣。甚至如果一個公司決定切換自己的開發平臺,那它可能需要替換整個開發團隊,或者從頭開始對他們進行培訓。即使培訓完成后,在技能上還是存在嚴重的不足;畢竟,一個高級.NET開發者不可能在經過3個月培訓后突然變成一個高級Java開發者。
另外,公司需要保留現有技術人員來維護已有的代碼。你認為這些員工會坐視他們的職位被取消,或者他們的技能將變得無用或貶值嗎?當然不會。對一個公司來說,完全從Java轉向.NET或完全從.NET轉向Java,都是一種自殺行為。最多是通過一個多年期項目來對員工進行重新教育。自從.NET 發布以來,從VB6到.NET的遷移都已經花了8年時間。
程序員和項目的轉型需要時間(北京北大青鳥學校提供,未完)