The Old Blog Archive (Traditional Chinese), 2004-2009

Archive for March, 2006

不能親自出席的演講公告:「Cocoa: 即沖即溶Mac OS X程式設計指南」(2006年4月8日)

(update:關於rich client的譯名,b6s建議可以譯成「瑞氣千條客戶端」。至於為什麼是瑞氣千條呢?請看布袋戲……)

相信很多朋友都聽說了OSDC.tw 2006的事。我想這將是2006年台灣最重要的開發者社群聚會之一。lukhnos做為OpenVanilla的開發者,也受邀提供一個講題。

這次我提供的講題是「Cocoa:即沖即溶Mac OS X程式設計指南」。Cocoa是Mac OS X的兩套官方API之一,其實就是NeXTSTEP的API(不用懷疑啦,所有Cocoa的舊類別名,都以NS開頭),是以Objective-C寫成的。也因為NeXTSTEP/Mac OS X的關係,而使Objective-C這個語言在眾多物件導向語言間獨樹一格──或者說,才得以在諸強者之間勉強爭到一席之地。這一次的講題,我將針對Cocoa及Objective-C做簡單的概述。希望在Mac OS X上進行原生應用程式(native application)開發的人,目前仍有學習Objective-C的必要。

附帶一提:我們是可以用Java來寫Cocoa原生應用程式──Xcode會幫你把框架生好,介面可以用Interface Builder來拉,裡面的程式再填上Java便成。但是一來Java版的Cocoa介面用起來沒有Objective-C好用,Apple對於繼續發展Java版的Cocoa又似乎很猶豫…… 至於Java的AWT/Swing呢,雖然可以靠「貼皮」(skin)的方式來模擬OS X的長相,但是偶爾還是有些地方皮沒貼好,會露出Sun或X-Window式的三夾板(最佳範例是NeoOffice/J)…… 其他語言的Cocoa接口也有一樣的問題。

在示範操作上,這次講題將直接示範用Xcode配合Interface Builder寫程式。不過,如果還示範如何寫「溫度換算程式」就太遜了。我們將配合WebKit套件,開發一套極簡單的「多樣態客戶端」(rich client)──配合Web後台存取資料,而以原生GUI作為表現層的應用程式。利用WebKit的JavaScript支援,我們甚至可以讓JavaScript寫的程式,倒過來呼叫原生的Objective-C程式碼(註:Apple的開發文件有遺漏細節,照著手冊的範例,程式是不會動的,確實的解法請參考下面的範例程式)。

由於4月8日當天我人不在台北,我會用voice over Skype的方式講解。示範部份則是由Blueapple出手。他用Cocoa寫程式的經驗,要比我豐富多了。:)

如果等不及了,目前的講題投影片(草稿,非常草的草稿)放在這裡。至於範例程式則放在這裡。範例的後台在這裡

OpenVanilla捐款贊助名單更新

OpenVanilla的捐款贊助活動,從2005年十月開始,也已經經歷快半年了。這半年來我們持續收到許多朋友的支持。本來我一直提醒自己一個月一定要更新一次捐款名單的,這兩個月先是因為工作,又有一些個人的事,竟然被擱到了一邊。跟大家說聲抱歉。

我們二月和三月都各收到一筆贊助款,在此再次謝謝大家的支持。捐款名單已經更新於OV的捐款贊助者名單,另外如果你有訂閱ov-develoepr這個mailing list,也會收到這份更新的名單。