原文地址:
iPhone知名第三方框架Three20簡介:
http://www.inside.com.tw/05/11/iphone-framework-three20-introduction
架构简介(上):
http://www.inside.com.tw/05/25/three20-three20-modules-introduction
架构简介(下):
http://www.inside.com.tw/05/27/three20-three20-modules-introduction-2
扩充组件:
http://www.inside.com.tw/05/30/three20-three20-extensions
繁体的,有时间再改吧.
最近刚接触,以后会把Three20的配置和学习使用心得发出来.
iPhone知名第三方框架Three20簡介
Three20是由Facebook所发展的一套iPhone框架,最初的目的是为了建构Facebook的iPhone版应用程式,后来便将framework开放原始码提供给广大的iPhone开发者使用。
使用Three20的软体
虽然一般各位在使用iPhone软体的经验中,对於Three20的存在没有特别的印象,但是事实上Three20出现在相当多的应用软体中,像是Facebook、Flickr的官方软体或是最近刚被Twitter收购的Tweetie及Gowalla的官方软体,都是使用Three20的作品。
Three20
或許會有人好奇為什麼這套框架要取名作為Three20呢?那是因為iPhone的螢幕解析度為320×480,所以就取名叫做Three20了。
誠如序文中提過,Three20是一個開放原始碼的框架,任何的開發者都可以自由的使用。而秉持著開放原始碼的精神,許多開發者也有貢獻一些程式碼回饋,像是Tweetie的下拉後重新讀取便是一例。
Three20所提供的功能
而究竟Three20提供了哪些好用的功能、如此的吸引開發者呢?
像是在UI上面,Three20提供了類似iPhone內建的相簿瀏覽介面:
兩種不同的訊息發佈介面,前者適合撰寫長篇訊息:
後者適合微網誌等的狀態更新:
此外也有一些通用的介面元素:
或是製作漂亮的按鈕:
及等待畫面:
除了在UI上提供了眾多方便、漂亮的介面之外,這些UI元件的使用上也比Cocoa Touch本身所提供的API容易不少。
而在底層的方面也提供了開發者許多方便的工具,像是:
- HTTP Request Cache – 將原本的HTTP呼叫加入快取等功能
- XML/JSON Parser – 簡易的JSON/XML Parser
- URL-based Navigation – 類似Web Framework般使用URL作為程式中的Controller切換
- Internet-aware Table Data Source – 表格中的資料來源可以容易的變成網路上的資料
透過Three20提供的這些方便好用的API,將無疑的可以替開發者節省下大量時間。
Three20入門方式
雖然Three20是一個很方便的Framework,透過這套框架我們可以快速的搭建出許多複雜的功能,然而由於Three20的開發資源幾乎都投注在框架本身的改版上,因此API文件可以算是相當的缺乏,對於剛接觸Three20的開發者可能會感到相當的困擾。
所幸的是,Three20的文件標頭檔(headers)註解相當齊全,對於每個類別的Property、Methods都有很詳細的註解,故開發者可以透過閱讀這些註解學習這些API。
而且當你下載Three20的同時,你也會得到許多範例程式,像是TTCatlog這個包含大多數Three20 UI元件的展示程式以及TTTwitter和TTFacebook這兩個分別搜尋Twitter和Facebook上的Three20相關內容的範例。