首先,OS X跟Windows一樣,內(nèi)部字符串編碼以Unicode為準 。但在操作系統(tǒng)不同的層級,使用方式并不相同 。Windows的Unicode layer很一致地使用了UTF-16作為編碼,并偏好使用BOM輔助判別 。OS X的文件系統(tǒng)使用UTF-8,而CoreFoundation及Cocoa則用UTF-16 。如果使用Cocoa自己的serialization機制,Cocoa會正確儲存和還原UTF-16的位順序 。不過,筆者自己建議,盡可能使用UTF-8作為各種交換時的編碼(相對于Windows對于UTF-8的支持不夠干脆簡明,Cocoa自己就提供了像stringWithUTF8String以及UTF8String兩種NSString的method,方便在native string與UTF-8間的游走) 。
其次,相對于Windows使用registry來管理應用程序設定,Mac OS X使用的是一種叫做property list(文件擴展名為.plist,簡稱plist)的XML文件 。Plist可以直接變成CoreFoundation及Cocoa的各種容器對象,也可以將后者輕易地serialize成plist 。因此OS X上的應用程序大量使用plist作為配置文件的格式,甚至作為數(shù)據(jù)單元格式 。將設定用個別文件儲存也減少了Windows集中管理registry所帶來的各種弊病 。
Mac OS X并不使用COM (Component Object Model)來作為面向對象的進程間通信(IPC; interprocess communication)的機制 。因為用Cocoa寫成的程序,可以透過Objective-C Distributed Object (DO)這個強大機制來達成IPC的任務 。除此之外,因為bundle架構,OS X軟件要設計外掛模塊架構也相當容易 。OS X有相當多支持外掛的應用程序,應歸功于這種開發(fā)上的便利度 。
OS X應用程序能夠利用所有OS X在UNIX環(huán)境上所提供的功能 。同時OS X一安裝好就已經(jīng)幫你準備好了大量的open source鏈接庫,例如可用來制作密碼密鑰認證的OpenSSL、負責解壓縮的libz、內(nèi)嵌式數(shù)據(jù)庫引擎SQLite等等 。這些都是加速開發(fā)的好幫手 。
推薦閱讀
- 機械表怎樣調時間,機械表在什么時間調時間最好?
- 秦始皇兵馬俑的歷史變化
- 禽霍亂的簡單治療方法
- 古印度和印度的區(qū)別 古印度和印度有什么區(qū)別
- 蘋果新電腦使用前非常有用的準備工作
- 世界洋流分布圖
- 買小C的朋友請注意
- 核舟記朗誦音頻 核舟記的朗誦音頻
- 蘋果電腦購買必須要注意的幾大問題
- 微信怎么發(fā)筆記語音
