« What's hot in Year 2006? | 網頁 | Java, PHP, 以及其他程式語言的發展訊息 »

31/12/2005

What's hot in Year 2006?

與其說這是一篇對 2006 年的預測,不如說這份清單是我看到,目前正在發生的事情。不過既使不是預測,其中也充滿了個人觀點,也許你會有不同的看法,歡迎交流囉!

關於應用系統的整合與開發

SOA, SOA, SOA... 今年炒熱一整年的 SOA(服務導向架構),明年還會繼續,而其相關的應用與資源 - ESB, JBI, SCA(Service Component Architecture), SDO(Service Data Objects)...,於2006年會更加成熟,而且實際的應用於產業中。會有許多產品宣告它是 SOA Enabled。

相較於 SOA 的炒作的熱絡與實質應用的成功,MDA(Model Driven Architecture)會遭遇理論與實質應用上的挑戰。為什麼這裡我會將 MDA 與 SOA 這兩個看似不相關的東西擺在一起,簡而言之,是他們對於所要解決的問題,有高度的相似性。只是採用的作法完全不同,這可以是另一個故事。

流程與方法學在政府及顧問公司的推波助瀾下更受重視

PMP, Project+, CMMI… 簡而言之,既然對大家都有好處(個人可以獲得專業上的認證,顧問公司及教育訓練機構可以賺到錢,公司可以改善組織流程,進入所謂的贏者圈),這麼好的 Business Story, 還會有誰來反對? 除了錢的問題…

Ajax Application向傳統網頁應用程式進軍,有些桌面應用程式也改以類 Ajax 技術實作

今年 (2005年) 可說是 Ajax Application 大放異彩的一年,一些網路服務應用先趨已經為了 Ajax Application 作了良好的示範。而在 2006 年,將會有更多軟體開發工具、套件實質支援 Ajax。另外一些傳統的Web 應用程式,像是 CMS(內容管理系統)、Portal(以及其上的 portlet),Report Querier … 也都會有 Ajax 應用出現。甚至一些原本的桌面應用,像是專業的資料分析、探勘程式,也都可能出現"類 Ajax"版本。

專門為 Firefox 設計的網站應用程式

以前在瀏覽網站時,常會發現某些網站是 for IE only,相信在今後也會有 for Firefox only 的網站。與過去for XXX瀏覽器網站最大的不同點是,這些for Firefox only的網站,會充份利用Firefox 所提供的Extension, XUL, Canvas功能,將網站與瀏覽器無縫整合在一起,使整個網站的瀏覽體驗,更像是在使用桌面應用程式。

VoIP 持繼發熱

網路電話持續加溫,傳統電話業務會因此而停止成長。Skype 加入NetMeeting的功能,eBay 將透過 Skype 的NetMeeting功能提供線上影音即時拍賣。

Eclipse 仍為開放工具平台的實質標準

雖然 NetBeans 越做越好,在穩定度與易用度上甚且超越 Eclipse,但仍然無法力挽狂瀾。其中一個很大的原因是,Eclipse 已成為開放工具平台的實質標準。你可以在 Eclipse 上找到 PHP, Python, Perl, C/C++… 等其他語言的 IDE plugins,這是 NetBeans 無法追趕得上的。

軟體開發廠商生存更加困難

因為有越來越多各式各樣的套裝軟體出現,代表著有越來越多的"大眾化需求"被滿足。未來新興的軟體公司,極可能會面臨沒有應用程式可寫的壓力。因為你能想到的應用程式,都被別人開發完成了。

一般軟體廠商,面對這種情勢,有三件事可以做

1. 要以專案模式,朝客製化方向前進
2. 把握特殊領域應用,開發利基市場
3. 尋找過人的創意,解決市場尚未被滿足的需求,或創造出市場需求。 有創意的廠商能迅速脫穎而出。

軟體服務化,成為廠商延伸市場觸角的法寶

接續前面所提的 Ajax Application 中的推想,有許多傳統上應該是執行於個人電腦上的桌面應用程式,會在技術成熟,以及"商業策略"的因素下轉而Web化。將傳統桌面軟體 Web化,除了可以延伸市場觸角外,還可以支援許多傳統上難以達到的商業策略。諸如提供客戶 live experience, 改變軟體計價方式,迅速收集客戶回應等。

接續前面「軟體開發廠商生存更加困難」的話題,即使傳統軟體廠商想朝向軟體服務化方向走,前方的道路依然充滿困難… 因為這方面做的最好的,依舊是現有優勢者: Google, Yahoo!及微軟三家公司霸占著大多數的線上服務市場;而IBM, Oracle 等老大哥也是策略創新的高手。想冒出頭來的新興廠商,只能在不到 10% 的市場機會中尋找生存的空隙。

Drupal 成為最受歡迎的 CMS/Protal 系統

Drupal是一套以 PHP 開發、模組化、架構簡易,功能卻強大的內容管理架站系統。在Java開發者的眼中,這樣的系統不但不物件導向(完全用callback 方法實作),甚至還不夠格稱上 3-tier system(因為 drupal 事實上就是 web-tier + DB),它的DB存取還不用DAO、Model Object的觀念呢…,可怎樣,功能就是很強,就是可以加入無限擴充的模組,要氣死物件導向派的高手了。

不可諱言的,我自然也是Java社群的一員。初次觀看drupal程式碼時,還是覺得PHP實在不是優美的語言,drupal 程式碼中更夾雜著SQL與HTML(附帶一提,drupal可能已是PHP 內容管理系統裡面程式碼寫的最優雅的了。以PHP的標準,如果說 Mambo 是金玉其外,那 drupal 則是文質彬彬)。

無論如何,在Mambo分家,而Nuke、Xoops在分支眾多的情況下,Drupal已然成為 PHP CMS 中開發社群凝聚力最強的一支隊伍。相信在2006年會有更多開發人員為 drupal 建立外掛模組,使drupal成為 Apache+MySQL+PHP 上實質的的應用軟體開發、整合平台。

OpenOffice 會吸收更多的死忠支持者,就如有一群人死忠支持 Firefox 一樣

更多政府機構會實質採用 OpenOffice, 更多學校會採用 OpenOffice 授課。

微軟會成為智慧型手機、PDA、家庭數位娛樂電器的實質贏家

這已是事實,不用多說。

應用程式繼續朝向精簡型架構設計,EJB 3.0 叫好不叫座

(雖然Jini大力推EJB 3.0)

這是一個最重視物件導向的年代,也是最不重視物件導向的年代。舉例來說吧,現在的Java應用程式框架,強調要支持POJO的觀念,可是事實上,MVC卻大行其道,MVC是物件導向嗎?有人打圓場,說這叫separation of concerns。再以前面的 drupal 實作為例,callback不算物件導向吧!可是它卻是標準的 IoC (Inversion of Control),符合 Hollywood principle -"Don't call me, I will call you"。

"物件導向不再無限上綱"。這句話一出,怕是要引起不小的爭論了。讓我簡單的說吧! 在未來的應用系統開發,你所強調的是架構,是服務,是功能,是流程。而物件,則是堆砌這一切的基本單元。也就是說,你只有在構築"程式的基本單元"時,才會採用物件導向的思維模式。當你往上堆砌系統,或一開始即採用架構導向系統開發方法(Architecture Oriented System Development)時,比較適當的思維模式,是將系統看作一部"機器",你考慮的應當是系統各部元件之間的連結,彼此間如何互動,最後才是各部元件各自的角色與職責。

這與傳統的物件導向方法的差異是,這樣的方法是由整個系統,由整體到部份,由外往內,由多數到單一,再由單一推進至物件裡面。而不是一開始就著重在各個功能物件上。甚至在各功能物件之間尚未完成定義前,就必須先設計整個系統的訊息交換機制。要深入探討,這又是另一個故事,就此打住。

引用通知

links for 2006-01-04

Drupal是一套以 PHP 開發、模組化、架構簡易,功能卻強大的內容管理架站系統。 可以看看,一個從Xoops, Nuke 系出同門的CMS系統~~支援多種模組新增 (tags: PHP) 愛德華日誌...

引用人: Blog E | 05/01/2006

Drupal 功能簡介(本站平台)

    本站以Drupal系統所建制。在Drupal開發的主站上,有完整的使用說明。將陸續介紹一些基本功能,讓所有朋友更容易親近此套系統。
Drupal是一套以PHP構成的動態平台,可作為個人

引用人: 為耶穌而作 | 08/02/2006

留言

感謝你分享關於Drupal的一些未來展望
很久沒再看PHP 的CMS 系統了(心中一直以為WordPress會一統江湖)
不過MT2.61也是繼續用的嚇嚇叫
CMS 還是應該回歸Content

一直強調延伸或是一些設計概念倒是沒有那麼重要

小弟我是認為~ 一個不錯的編輯系統HTMLEdit(EX: HtmlArea)
加上基本的DB 支援
其實就可以設計出夠用(夠用~~ 往往是每個CMS最重要的部份)

原來設計概念方面的(不論是Template、MVC等等),反而不是最重要的

發表人: Evan | 04/01/2006

謝謝 Evan 的推介,我原本以為 WordPress 只是一套 blog system,我會找時間深入研究一下

發表人: Edward | 11/01/2006