Three20 是由 Facebook 所发展的一套 iPhone 框架,最初的目的是为了建构 Facebook 的 iPhone 版应用程式,后来便将 framework 开放原始码提供给广大的 iPhone 开发者使用。

虽然一般各位在使用 iPhone 软体的经验中,对于 Three20 的存在没有特别的印象,但是事实上 Three20 出现在相当多的应用软体中,像是 Facebook、Flickr 的官方软体或是最近刚被 Twitter 收购的 Tweetie 及 Gowalla 的官方软体,都是使用 Three20 的作品。

或许会有人好奇为什幺这套框架要取名作为 Three20 呢?那是因为 iPhone 的萤幕解析度为 320×480,所以就取名叫做 Three20 了。
诚如序文中提过,Three20 是一个开放原始码的框架,任何的开发者都可以自由的使用。而秉持着开放原始码的精神,许多开发者也有贡献一些程式码回馈,像是 Tweetie 的下拉后重新读取便是一例。
Three20 所提供的功能而究竟 Three20 提供了哪些好用的功能、如此的吸引开发者呢?






除了在 UI 上提供了众多方便、漂亮的介面之外,这些 UI 元件的使用上也比 Cocoa Touch 本身所提供的 API 容易不少。
而在底层的方面也提供了开发者许多方便的工具,像是:
透过 Three20 提供的这些方便好用的 API,将无疑的可以替开发者节省下大量时间。
Three20 入门方式虽然 Three20 是一个很方便的 Framework,透过这套框架我们可以快速的搭建出许多複杂的功能,然而由于 Three20 的开发资源几乎都投注在框架本身的改版上,因此 API 文件可以算是相当的缺乏,对于刚接触 Three20 的开发者可能会感到相当的困扰。
所幸的是,Three20 的文件标头档注解相当齐全,对于每个类别的 Property、Methods 都有很详细的注解,故开发者可以透过阅读这些注解学习这些 API。
而且当你 下载 Three20 的同时,你也会得到许多範例程式,像是 TTCatlog 这个包含大多数 Three20 UI 元件的展示程式以及 TTTwitter 和 TTFacebook 这两个分别搜寻 Twitter 和 Facebook 上的 Three20 相关内容的範例。
结论笔者在今年参加了 Google Summer of Code 这个由 Google 赞助的暑期开放原始码活动,让学生们能够实际参与开放原始码开发的工作。而我所作的专案便是替 Three20 增加 iPad 的支援。
在接下来的几个礼拜中,笔者将陆续撰写 Three20 相关的文章,希望能够带领各位读者深入浅出 Three20 这个框架,还请各位读者拭目以待。