今天又看到編輯精選Java程式員和.NET程式員 這個話題,有點不太理解,難道說非得爭論出個所以然才可以?看了看剛寫的這幾篇文章,感覺Tony Qu寫的這篇中國技術界怪相還是很有道理的,也非常贊同"語言只是工具、有時間多為社區做貢獻"這些觀點。不過自己還是有些想法,希望也是一種補充,也是一種號召,不要再為".NET平台和Java平台的優劣"這些沒有意義的話題爭論不休了。
- 無論是.NET還是J2EE都是為了實現業務需求而採用的具體實現,我們選擇某個平台是由各種環境因素所決定的,不是我們的喜好。這些環境因素包括:客戶要求(例如客戶已經有了固定的資料服務器,有了某些特定的產品組件等);公司內部可重用組件庫(可能公司做某項業務,一直採用某種平台,在這些平台上有了成熟穩定的架構);當前業務需求實現複雜程度和開源庫的支援程度;技術開發難度(例如案頭系統、bs系統採用不同的平台技術難度是不同的);效能、易用性、可移植性等非功能性需求;公司內部開發人員水平以及數量等。
所以程式員作為業務系統的開發人員一方面是根據自己的知識經驗向經理提供合理的建議,二是平台決定之後,選用合適的組件、庫和語言完成業務系統的開發。難道說你是java平台的堅定支援者就會因為公司採用了.net開發系統就辭職走人嗎?或者是因為客戶指定使用.NET而公司一直採用j2EE公司就會放棄該項目呢?
- 我們不應該抱著一顆大樹不放,IT的發展瞬息萬變,各種技術層出不窮,多學習,多瞭解,擴充知識面的廣度和深度才是需要我們不懈追求的。都知道達爾文的進化論:"適者生存"。那麼每種技術、平台存在就有其存在價值,即使我們再去說他不好,說它差勁,但是它本身的存在就是對我們這種詆毀的最好的駁斥。瞭解、學習、研究,清楚某技術存在的價值,明晰它的不足,在合適的情境下能夠做出合理正確的抉擇,降低成本、縮短工期、提高效率、滿足客戶才是最重要的。
J2EE平台主要的開發語言java在bs、cs系統的開發效率上不如.net平台,開發難度也要高些,但是我們不可否認的是在相關標準的研究、開放方面卻比.net平台要好很多;.NET平台的語言、類庫、控制項、工具等都做的很好,容易上手,易用性好,java這方面有差距,但是我們需要承認目前在大型企事業的應用系統中,java還是佔據很大的優勢。
我們為什麼不去學學J2EE平台的相關標準呢?看看java為什麼目前在大型企事業系統中佔據優勢?想同的,為什麼不去研究研究.NET相關產品是如何提高開發效率,提高使用者易用性的呢?
事實上,我們去討論誰優誰劣真的沒什麼必要,那怕有一天.net或者java倒下了,我們也不能否定它曾經存在的價值,不能抹去它給IT業發展所帶來的價值,何況我們也不能主導興衰交替的過程,我們要做的僅僅是盡自己所能的去學習,去總結,汲取萬物之精華為己所用,提高技術素養而IT留名。
最後用一句話來結束"朝代更替,曆史皆然!"。