北京北大青鳥校區(qū):Java和.NET哪個更好?(一)

北京北大青鳥校區(qū)介紹:Java和.NET作為技術(shù)開發(fā)語言,多年來一直“明爭暗斗”,那么到底哪個更好?選擇哪個?北京北大青鳥校區(qū)認(rèn)為這要取決于個人喜好和當(dāng)?shù)芈殬I(yè)機遇。

1.Java SE 7遭遇.NET CLR會發(fā)生什么?

從Java SE 7的功能列表中可以看出,它相比以前版本有了長足提高。那么,它是一個游戲改變者嗎?在過去數(shù)年中,JVM和.NET CLR都發(fā)生了眾多改進;過去那些只有技術(shù)非常高超的程序員才能完成的許多事情,現(xiàn)在借助于JVM和.NET CLR的增強功能,普通程序員也能夠做得到。

盡管JVM和.NET CLR并非在同一個時間實現(xiàn)相同的想法,但是如果在一方出現(xiàn)了某個好的想法,另一方也會迅速跟進,這一點不僅僅體現(xiàn)在運行時層面上。舉例來說,對于Java來說,Hibernate項目取得了巨大成功后,.NET也迅速推出了NHibernate。而.NET的閉包(closures)功能深受眾多開發(fā)者的歡迎,Java似乎不久也將實現(xiàn)它們,當(dāng)然,這是一個語言功能,而非運行時功能。 (北京北大青鳥校區(qū)


2.在可以預(yù)見的未來,一個運行時是否會徹底擊敗另一個?

盡管從技術(shù)層面上JVM和.NET CLR非常相似,但它們都有自己的市場,兩者的靈活性都不是很強。如果一個人已經(jīng)圍繞.NET服務(wù)器和IIS創(chuàng)建了他們的基礎(chǔ)架構(gòu),他不可能第二天醒來把所有這些遷移到Java,反過來也是這樣。甚至如果一個公司決定切換自己的開發(fā)平臺,那它可能需要替換整個開發(fā)團隊,或者從頭開始對他們進行培訓(xùn)。即使培訓(xùn)完成后,在技能上還是存在嚴(yán)重的不足;畢竟,一個高級.NET開發(fā)者不可能在經(jīng)過3個月培訓(xùn)后突然變成一個高級Java開發(fā)者。

另外,公司需要保留現(xiàn)有技術(shù)人員來維護已有的代碼。你認(rèn)為這些員工會坐視他們的職位被取消,或者他們的技能將變得無用或貶值嗎?當(dāng)然不會。對一個公司來說,完全從Java轉(zhuǎn)向.NET或完全從.NET轉(zhuǎn)向Java,都是一種自殺行為。最多是通過一個多年期項目來對員工進行重新教育。自從.NET 發(fā)布以來,從VB6到.NET的遷移都已經(jīng)花了8年時間。

程序員和項目的轉(zhuǎn)型需要時間(北京北大青鳥學(xué)校提供,未完)

北大青鳥網(wǎng)上報名
北大青鳥招生簡章