一起学习
作者簡歷:
現任:艾揚科技行銷長
曾任:英特連企劃部經理
Developer, Developer, Developer
也許在一般人的眼裡,對Microsoft的印象是幾乎所有的PC都裝上了他們家的作業系統還有Office應用軟體,但在Software Developer(以下簡稱Developer)的眼中,Microsoft與之最密切的關係,卻是一家提供軟體架構(Software Framework)、程式開發介面(APIs)、以及軟體開發工具(Software Development Tools)的廠商。
在Microsoft的發展歷史上,取悅Developer是至關重要的事,所以除了具體的軟體提供,還有一堆的MSDN光碟、出版物、雜誌、線上資料、教育訓練、資格認證等資源與課程,以便Developer可以規劃自己所需者取用之。
乍看之下,Java似乎也不脫這些回事,Java以程式語言起頭,可以在各不同平台的虛擬機器(Virtual Machine)上執行相同的Bytecode,也有認證、教育訓練、各種學習資源,可以讓Developer以有價或無價的方式取用。
每年的JavaOne Conference轟轟烈烈地在舊金山舉行,要吸引的,就是全球的Java Developer;而Microsoft的TechNet Summit,更是經常性地在各地舉辦,這也是為了要與Developer保持良性的互動而來。但無論是Java Community還是Microsoft,在對Developer技術給予與分享的背後,卻是兩脈相似的商業利益切割,惟因一群開放與一家封閉,而有了對立與爭戰。
軟體架構光譜中ISV的繁華與落寞
就商業的角度來看,光有Developer是不足以成市場的。我們先來看一下軟體產業光譜,然後再進一步解釋卸下「道德觀」外衣後,不管封閉還是開放,其實都不脫商業競爭的基本脈絡。
這個軟體產業光譜是這樣子的:
作業系統(Operating System) → 虛擬機器(Virtual Machine) → 中介軟體/伺服器軟體(Middleware/Server) → 應用軟體/解決方案/工具軟體(Application/Solution/Tool)
這個光譜,可以適用在各種具運算能力的硬體上,如Mainframe、Workstation、PC、Pocket PC、PDA、Cellular Phone、各種IA設備等。在這個光譜的角色扮演上,我們常聽到的ISV (Independent Software Vendor),一般就是指提供中介軟體、伺服器軟體、套裝應用軟體與工具軟體的廠商﹔而SI (System Integrator),則是提供客制化解決方案,做系統整合服務的公司。
好,現在我們分別檢視Microsoft暨其跟隨者,以及Java Community陣營的光譜,將各市場知名的軟體公司依屬性擺入其中,您會發現,這兩張光譜的最大不同,是在Microsoft這張上,其中介軟體的跟隨廠商,數量要比Java Community這邊要少得多,或者我們可以說,其實整個Java Community的興盛繁華,可以說就是一部中介軟體廠商的演進史。
所以我們可以看到嘗到OS/2桌上型電腦作業系統鎩羽而歸苦味的IBM,在Java Community中以WebSphere family極度閃耀﹔1995年以三個創辦人Bill Coleman, Ed Scott, Alfred Chuang名字首字組成的BEA,正以WebLogic系列產品於Java Community稱霸一方,成為參與企業軟體基礎架構競賽頗具實力的一員。您看看,光一個J2EE Application Server(乃中介軟體的一類),就有BEA、IBM、Oracle、HP、SUN (iPlanet)、HP、Marcomedia、IONA等廠商在此頭角崢嶸。再看受益於諸Java公開技術規格,如開發符合JMS、JTA/JTS、JDBC、JCA 標準程式開發介面產品的眾ISVs,齊發之市場活力,絕非Microsoft這邊光譜所能見。
中介軟體廠商的天職,是在搭配其產品時,提供程式開發介面的實作(API Binary)給Developer使用,以便Developer可以開發各種應用軟體、工具軟體、與解決方案。在Java Community陣營,程式開發介面的制定,是透過各JSR(Java Specification Request)提案,JCP(Java Community Process,)審核,有一套公開的流程來進行。經JCP各委員會通過的各Java程式開發介面規格(API Specification),只是一份文件,裡面有規範,也有建議。
所以只要是自認有能力的中介軟體廠商,都可以依照規格來實作出自己的產品(Implementation)。至於在市場面,就交給同一規格實作產品的廠商去自由競爭,各憑技術、行銷、服務去取悅Developer與企業。即可謂「兄弟爬山,各自努力」,而一座座的山頭,就是一份份由JCP所審訂出的Java技術規格。這樣一來,Developer就可以只學一次標準的Java程式開發介面,只寫一份程式碼,取得抽換各規格實作產品的自由,達到Avoid Vendor Lock-in的理想,不被特定廠商的特定產品綁死。
以今年的JavaOne Conference來說,除主辦者SUN外,還有三級共35家的協辦者(Co-Sponsors),200餘家的參展者(Pavilion Exhibitors),其中絕大多數都是Java各類中介軟體的提供者,或是已經內含了中介軟體的開發工具提供者,真可謂繁華一片。
反觀Microsoft這邊,整個軟體架構以及以系統為主的程式開發介面制定權,被一家公司所掌握,在.NET Framework中,幾乎無中介軟體廠商實作產品取代的空間,充其量只能在一側串接。在這片光譜中,ISVs只剩開發套裝軟體者有機會繁華,而且還要盡可能地挑Microsoft未有者發展。
台灣目前的軟體產業,純正的ISV數量並不多,以中介軟體為事業發展核心者更是屈指可數,所以可能較無法體會一個公開且中立的程式開發介面標準,實則代表著多少的中介軟體市場機會。SI在台灣倒是不少,SI裡的Developer,也就是中介軟體廠商千方百計要吸引的對象,則幸福一些,可以只挑一邊,也可以在Microsoft與Java之間遊走,只要能夠開發出解決方案即可。
Java奧斯卡獎,得獎的是…
有鑒於Java Community的日漸壯大,1999年開始了首屆的Java奧斯卡獎 - Java Technology Achievement Awards。獎項分成Java Pro讀者票選獎與Java Community獎兩大部分。前者旨在表揚對Java軟體開發有所助益的各類中介軟體、工具軟體、書籍﹔後者則是在表揚對Java Community或技術發展有卓越功績的團體與個人。
今年的Java Pro讀者票選獎共有28項,最大贏家是Borland,共獲得7個獎項,其中有6個皆與其開發工具有關,果然是老字號的Developer之友。第二號贏家是IBM,獲得6個獎項,其中有4個也是跟開發與部署工具有關。餘者如Oracle獲得3個獎項、BEA獲得2個獎項、Blue Martini獲得2個獎項。筆者在此不一一列出,想了解詳情者,可以自行連結參閱,僅列舉如下:
﹡Most Valuable Product: IBM – WebSphere Studio Application Developer
﹡Best Java Book: O’Reilly – Java in a Nutshell Third Edition (Flanagan)
﹡Best Application Server: BEA WebLogic Server
﹡Best Java Enterprise Portal: BEA – BEA WebLogic Portal
﹡Best Java Messaging Middleware: IBM – WebSphere MQ
﹡Best Java Deployment Tool: IBM – WebSphere Studio Application Developer
﹡Best Database Tool for Java: Oracle – Oracle9i JDeveloper
﹡Best Java Database Application Tool: Oracle – Oracle9i JDeveloper
﹡Best Development Suite for Java: Borland – Borland Enterprise Studio for Java
﹡Best Team Development Tool: Borland – JBuilder and TeamSource
﹡Best Enterprise-Level IDE: Borland–JBuilder Enterprise
﹡Best Entry-Level IDE: Borland–JBuilder Personal
﹡Best New Product: Borland –Borland Enterprise Server
﹡Best Java Testing Tool: Junit.org – Junit
﹡Best Java Virtual Machine: SUN – SUN JVMs
Java Community獎則共4項,兩項團體,兩項個人,分別是:
﹡Outstanding Contribution to Java Technology by a Group: JXTA Project ()
﹡Outstanding Contribution to Java Technology by an Individual: Mark Hapner (SUN J2EE 架構領導者)
﹡Outstanding Contribution to the Java Community by a Group: Java Community Process (JCP, )
﹡Outstanding Contribution to the Java Community by a Individual: David A. Chappell (Sonic Software 副總暨首席技術傳教士)
下载本文示例代码
2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)2002 JavaOne 會議隨想(上)
阅读(148) | 评论(0) | 转发(0) |