2008年12月6日 星期六

[Discussion] Why has the Web become the Default Development Platform?

不知在哪一天,我得知了 InfoQ 這網站,我覺得這個網站的內容很棒,也很先進,因為每天會有許許多多的人在上面分享自己的看法,有點類似討論區,不過又有點不一樣,我也說不上來!在這網站中我知道了很多最新資訊!

Why has the Web become the Default Development Platform?是我最近看到的一篇文章,我就有感而發一下吧~

文章中提到 DWR 的創始者 Joe Walker,曾經提出一項看法:Web 已經成為系統開法者首選的開發平台。這裡所謂的開發平台不是指 JAVA 或 C 的開發環境,而是系統的佈署與介面的顯示環境。

Joe 提出這樣的看法有他的理由,Web 平台與生俱有的特性:1) 系統容易佈署、2) 簡單的 UI 介面開發、3) 單純的 HTML 語法與 4) 開放性的平台架構,這些都讓 Web 一躍而晉身成為系統開發者的首選平台。

Google 工程部門的副總,Jeff Huber 也提出同樣的說法:(內容我無法完全聽懂XD)

Jeff Huber 提到:如果你還是在思考採用哪種平台會比較好,你就還活在遠古時代的思維。因為 Web 已經勝出了!Web 就是未來的開發平台。

讓我們延續上面 Joe 所提到的四點特行來探討。

1. 系統容易佈署。系統的佈署曾經是開發者頭疼的問題之一,因為機器上 OS 的異質性,讓 programmer 經常要為了 portable 問題而費盡心思,不過,Web 平台就是可以讓 programmer 不必在費心於這樣的問題。因為 Web 的平台可以達到 zero installation。就像我們透過 J2EE 開發 Web 技術一樣,所有的 WAR 檔都交給 web server(如:Jakarta Tomcat) 來幫我們佈署,我們只要將檔案丟給 web server,他就會幫我們處理一切的佈署事宜。甚至,我們無須要求 client 端安裝任何的軟體,因為 OS 都具備有 browser 軟體,client 端可以不用有壓力的使用 web 平台上的東西。

2. 簡單的 UI 介面開發。HTML 語法已經行之有年,並且經過了許許多多的研究幫忙提供與開發更好用更方便的標準與技術,例如:DHTML、CSS、Javascript或是近年來走紅的 AJAX 等。這都讓開發者可以簡單的基於這些標準或技術之上來達到系統的目的。甚至,在 J2EE 應用裡,有許許多多的 OpenSource 也提供了更快速更方便與更直覺的開發框架,如:Velocity 或 FreeMarker 等介面的框架。

3. 單純的 HTML 語法。如同上述,HTML 原本的用途在於簡單的將資料能夠在網路上顯示,所以提供的語法採用 Markup Language 來表示,這不僅僅讓使用者可以快速上手,也是 machine readable。

4. 開放性的平台架構。Web 最基本的就是 HTTP Protocol,這也是 Internet 中使用最頻繁的 protocol 之一。所以只要系統佈署後,就可以讓系統在網路上被搜尋到與使用到。

除了這四點之外,我個人認為 Web 平台還有一項優勢:Web 平台尚以經有許多的 framework 讓系統的架構可以更容易開發與維護。在 J2EE 應用中有許多的 framework,如:Struts, WebWork, Spring MVC 等,都致力於讓 Web 系統符合 MVC design pattern(也就是 separate of concern 的概念),如果開發者採用 Web 作為系統的開發平台,那就可以更進一步的選用 OpenSource 的 MVC framework,這樣讓系統更具有 robust 與 reliability。而 MVC 架構在傳統的 Application 中並沒有現成的 framework 可以使用,這導致系統開發者要自己處理 MVC 中很 detail 的事項,或者就是要自己開發 MVC framework。

以後小弟在各網站之間有看到哪些好玩的訊息,在分享給大家吧~

如果您有任何想法或指教,您可以留言或寫 mail 來一起討論與切磋喔~

沒有留言: