Mashup

Mashup

mashup是糅合,是當今網路上新出現的一種網路現象,將兩種以上使用公共或者私有資料庫的web套用,加在一起,形成一個整合套用。一般使用源套用的API接口,或者是一些rss輸出(含atom)作為內容源,合併的web套用用什麼技術,則沒有什麼限制。mashup在geek群體和網際網路玩家之中獲得了極大的歡迎,mashup未必需要很高的編程技能,只需要熟悉api和網路服務工作方式,都能進行開發,所以很快成為一個流行的網路現象。很多公司例如yahoo/google都為此提供開放接口,以吸引這個群體。

基本介紹

一般使用源套用的API接口,或者是一些rss輸出(含atom)作為內容源,合併的web套用用什麼技術,則沒有什麼限制。mashup在geek群體和網際網路玩家之中獲得了極大的歡迎,mashup未必需要很高的編程技能,只需要熟悉api和網路服務工作方式,都能進行開發,所以很快成為一個流行的網路現象。很多公司例如yahoo/google都為此提供開放接口,以吸引這個群體。

Mashup Mashup

Mashup 是一個非常cool的新的應用程式種類。如果你想真正的了解它們,我們需要回過頭來看看你現在的計算機,其實它就是一個非常好的幫助你理解Mashup的模型。計算機運行著作業系統,例如Windows。現在開源的作業系統無疑是一個非常好的APIs 的集合或者一個應用程式編程接口,幫助開發者去構建他們的應用程式。計算機本身也是一個很好的為用戶提供接口的例子,鍵盤和滑鼠可以被理解為你通過計算機的接口而使用的不同的應用程式。一個API可能是幫助電腦接入網路又或者用來提供顯示功能。總之,這些APIs 幫助開發者更加容易的去構建他們的應用程式。在過去開發者需要描繪每一個點顯示的位置,而現在僅僅需要給出對稱坐標,就可以完成一個視窗的繪製。

APIs做的事情是這樣的。假如你訪問檔案系統,那么你所需得到APIs,這是計算機工作的途徑。然後你就可以在一個視窗里運行一個應用程式。人們開發一個應用程式通常需要3或4個不同的APIs,或許更多。

運行方式

這是一個計算機傳統的運行方式。現在,我們將Windows,作業系統替換成網路。那么同樣的,就會有許多公司來提供哪些APIs。比如yahoo,google.例如一個叫EVDB的公司,它是一個事件日曆的資料庫,可以提醒你什麼時間到哪裡做什麼事情。也包括像 Amazon 和 eBay,又比如Technorati ,所有這些不同的公司把APIs放到網上使開發者可以訪問。

現在假如你是一個Web開發者,你通過一個API 找到你附近哪些地方會有犯罪。然後你訪問Google 地圖API,把這兩個內容整合在一起,那么你就得到了一個標有犯罪紀錄的地圖。這個新的地圖就叫Mashup。因為開發者通過來自多個網站的APIs,把他們合併在一起,成為了一個新的很cool的應用程式。

現狀

越來越多的APIs被開放,這是一個比較明確的方向,每天都會有大概2.5個Mashup產生,預計到2007年每天Mashup的產生數量會增加到10個。

之所以,一天會有10個Mashup產生是因為,開發將會變得越來越容易,你不用再必須變成一個C語言程式設計師去展示你的創造力,你可以開發很Cool的套用,例如哪裡有停車空位的地圖,就像在California得Bay 地區的 ParkingCarma 所做的那樣。又或者你開發一個地圖示記出你的鄰居和你想去會見某人,這其實也已經是一個事實存在的套用了,FrozenBear公司正在做這方面的開發。

我們展示這些Mashup的同時,又有新的APIs隨時發布到網上,這就形成了一個生態系統,而且這個生態系統比目前現存的所有生態系統都會增長的更快。Windows,你必須成為一個程式設計師才可以開發應用程式,Linux,Macintosh也同樣是如此,但是Mashup卻不必, 它將會是今天增長速度最快的一個生態體統。

發展

Windows Windows

Mashup 不僅僅是發展的很快,更好的一個地方是你不再需通過某人才可以發布一個新API到網上。以前你必須要通過微軟才可以發布一個新的API加入到Windows,這種情況同樣出現在Macintosh。另外,儘管你也許可以添加一個API直接到Linux,因為它是開源的,但是這對大多開發者來說並不具備這樣的權利。

另外,你在發布了一個API到網上之後,不需要再通過誰去批准它,它會自動對所有開發者有效。所有的不同的APIs都會成為更多Mashup的燃料。

越來越多的Mashup出現在網上,越來越多的網路用戶去使用這些新的Mashup應用程式。越來越多的開發者加入到開發Mashup這個生態系統當中。在未來兩年,你將可以聽到關於Mashup的信息。

典型套用

地圖 Mashup

在這個階段的信息技術中,人們蒐集大量有關事物和行為的數據,二者都常常具有位置注釋信息。所有這些包含位置數據的不同數據集均可利用地圖通過令人驚奇的圖形化方式呈現出來。mashup 蓬勃發展的一種主要動力就是 Google 公開了自己的 Google Maps API。這仿佛打開了一道大門,讓 Web 開發人員(包括愛好者、修補程式開發人員和其他一些人)可以在地圖中包含所有類型的數據(從核子彈災難到波士頓的 CowParade 奶牛都可以)。為了不落於人後,Microsoft(Virtual Earth)、Yahoo(Yahoo Maps)和 AOL(MapQuest)也很快相繼公開了自己的 API。

視頻和圖象 Mashup

圖像主機和社交網路站點(例如 Flickr 使用自己的 API 來共享圖像)的興起導致出現了很多有趣的 mashup。由於內容提供者擁有與其保存的圖像相關的元數據(例如誰拍的照片,照片的內容是什麼,在何時何地拍攝的等等),mashup 的設計者可以將這些照片和其他與元數據相關的信息放到一起。例如,mashup 可以對圖片進行分析,從而將相關照片拼接在一起,或者基於相同的照片元數據(標題、時間戳或其他元數據)顯示社交網路圖。另外一個例子可能以一個 Web 站點(例如 CNN 之類的新聞站點)作為輸入,並在新聞中通過照片匹配而將照片中的內容以文字的形式呈現出來。

搜尋和購物 Mashup

搜尋和購物 mashup 在 mashup 這個術語出現之前就已經存在很長時間了。在 Web API 出現之前,有相當多的購物工具,例如 BizRate、PriceGrabber、MySimon 和 Google 的 Froogle,都使用了 B2B 技術或螢幕抓取的方式來累計相關的價格數據。為了促進 mashup 和其他有趣的 Web 應用程式的發展,諸如 eBay 和 Amazon 之類的消費網站已經為通過編程訪問自己的內容而發布了自己的 API。

新聞 Mashup

新聞源(例如紐約時報、BBC 或路透社)已從 2002 年起使用 RSS 和 Atom 之類的聯合技術來發布各個主題的新聞提要。以聯合技術為基礎的 mashup 可以聚集一名用戶的提要,並將其通過 Web 呈現出來,創建個性化的報紙,從而滿足讀者獨特的興趣。

微博 Mashup

將多個微博在一個平台上進行聚合顯示, 在一個平台上可以同時綁定多個微博(騰訊微博、新浪微博、搜狐微博、網易微博、人人網、豆瓣、飯否、嘀咕、Follow5、天涯微博、人間網、做啥、9911、同學網、開心網等),從而滿足用戶同步多個平台的要求,提供了微博信息匯總表,讓用戶方便查看自己所有平台的冬粉,關注和微博數,輕鬆實現在不同微博間自由切換。並且提供多微博評論列表讀取,跨平台分享,聚合收藏等功能。使用戶可在同一螢幕中同步收發信息,實現了真正意義上的社交網站雙向聚合。類似網站功能的有瑪撒網,微博通等。

重要提示

JSONP 是構建 mashup 的強大技術,但不幸的是,它並不是所有跨域通信需求的萬靈藥。它有一些缺陷,在提交開發資源之前必須認真考慮它們。第一,也是最重要的一點,沒有關於 JSONP 調用的錯誤處理。如果動態腳本插入有效,就執行調用;如果無效,就靜默失敗。失敗是沒有任何提示的。例如,不能從伺服器捕捉到 404 錯誤,也不能取消或重新開始請求。不過,等待一段時間還沒有回響的話,就不用理它了。(未來的 jQuery 版本可能有終止 JSONP 請求的特性)。

JSONP 的另一個主要缺陷是被不信任的服務使用時會很危險。因為 JSONP 服務返回打包在函式調用中的 JSON 回響,而函式調用是由瀏覽器執行的,這使宿主 Web 應用程式更容易受到各類攻擊。如果打算使用 JSONP 服務,了解它能造成的威脅非常重要。

相關詞條

相關搜尋

熱門詞條

聯絡我們