Symbian
| 一位讀者請求改進本書的格式和佈局。 良好的格式使書籍更易於閱讀,對讀者更具吸引力。有關想法,請參閱編輯維基文字,有關優秀書籍的示例,請參閱WB:FB。 即使在刪除此訊息後,也請繼續編輯本書並改進格式。有關當前進展,請參閱討論頁面。 |

歡迎來到華夏公益教科書上的 Symbian 書籍。本書最初由來自#symbian on freenode 的正義人士發起,希望本書包含一些有關 Symbian C++ 程式設計的資訊。主要是一些未在文件中說明或透過搜尋論壇難以找到的功能。
入門
如果您剛入門,最好閱讀維基百科關於Symbian 的文章。頁面底部有很多非常有用的連結,包含大量教程和示例。
有用連結
您需要的一些連結
- Symbian 基金會開發者網站
- Symbian OS 錯誤程式碼 on NewLC.com。
- 論壇諾基亞 網上最大的 Symbian 相關討論論壇。
- Symbian 示例 獨立程式碼示例的集合。
- 論壇諾基亞維基
- 論壇諾基亞維基
- Symbian C++ 谷歌小組
基於 Symbian OS 的平臺
有幾個基於 Symbian OS 的移動平臺。最流行的平臺是諾基亞的 S60 和 UIQ Technology 的 UIQ。諾基亞還擁有 Series 40,它不是 Symbian 平臺,而是基於諾基亞專有的封閉作業系統。Series 40 支援 J2ME。有關 J2ME 的更多資訊,請閱讀J2ME 華夏公益教科書。
諾基亞的S60,以前稱為 Series 60,包括各種功能的手機。可以在論壇諾基亞 中找到 SDK。特別是如果您計劃使用較新的 SDK,則需要Carbide.vs 或 Carbide.C++。
UIQ
索尼愛立信擁有 UIQ,例如索尼愛立信、摩托羅拉和明基使用。可以在UIQ.com 中找到 SDK。
諾基亞的Series 80 是通訊器系列,包括 9300、9300i 和 9500。可以在論壇諾基亞 中找到 SDK。9200 系列有單獨的SDK。
Series 90
諾基亞之前有一段時間有 Series 90,它只包含兩個產品,7700 和 7710。只有 7710 實際上被商業銷售。Series 90 的 SDK 在論壇諾基亞上已找不到,並且 Series 90 的開發已停止。
Symbian C++ 和作業系統基礎
Symbian OS 有很多編碼和命名約定。作業系統也有自己的基本型別等效項(主要是typedefs),例如TInt(有符號整數)和TText16(無符號短整數),並且遵循命名類的約定,例如CMyComplexClass、TMySimpleClass 和MMyInterface。
Symbian OS 有一些記憶體管理的特殊之處。這些包括清理堆疊和兩階段構造的使用。
Symbian OS 不使用標準 C++ 異常,而是採用了自己的系統,稱為 leave 機制。簡而言之,這包括可能離開(大致丟擲)的程式碼和可以捕獲離開的程式碼(大致捕獲)。
Symbian OS 對字串的理解是描述符。這些是資料結構,可以儲存任何二進位制資料,但主要用於儲存和操作文字。
活動物件為協作式多工處理 提供了手段。Symbian OS 本身支援搶佔式多工處理,但活動物件通常是執行各種非同步任務的建議方法。
客戶端-伺服器框架
與其他一些作業系統一樣,Symbian OS 使用資源來獲取給定的定義,主要是與 UI 相關的定義。本節嘗試解釋如何定義資源並使用它們。
Symbian SDK
儘管每個平臺都提供(或應該提供)自己的 SDK,但它們之間有一些共同之處。
Unix 上的 Symbian SDK HOWTO - http://www.koeniglich.de/sdk2unix/symbian_sdk_on_unix.html