出版時間:2010-1 出版社:清華大學(xué)出版社 作者:(美)伊索特 等著,楊明軍 譯 頁數(shù):321 譯者:楊明軍
Tag標(biāo)簽:無
前言
本書將帶領(lǐng)您深入了解世界上最成功的智能手機(jī)操作系統(tǒng)。在本書即將付印時,世界上已經(jīng)有超過兩億部Symbian智能手機(jī)出廠——這是所有其他類型的智能手機(jī)銷量總和的兩倍。對于應(yīng)用程序和插件程序而言,它是一個巨大的潛在市場。Symbian OS是一個非常強(qiáng)大的環(huán)境,為其編寫最高效的軟件意味著要學(xué)習(xí)Symbian的C++方言,并要采用它使用的慣用語來思考問題。有誰能夠比最初設(shè)計該操作系統(tǒng)的軟件架構(gòu)師更適合教授該知識呢?Adrian及其團(tuán)隊寫出的本書將教您如何用Symbian OS的方式進(jìn)行“思考”。雖然其他的書籍也可以教您學(xué)習(xí)這門語言的各種機(jī)制,例如,教您如何使用GUI、網(wǎng)絡(luò)API以及應(yīng)用程序基礎(chǔ)結(jié)構(gòu),但是本書將更有助于您理解如何將復(fù)雜應(yīng)用程序有機(jī)結(jié)合在一起,這要更加深入得多。我曾經(jīng)參與過的Symbian OS的工作包括:曾作為第一部Symbian OS手機(jī)的技術(shù)架構(gòu)師,與人合著過一本關(guān)于受限內(nèi)存軟件的設(shè)計模式方面的書,此外,還曾經(jīng)營Penrillian公司,這是一家專門向Symbian OS移植軟件的公司。所有這些角色都使我強(qiáng)烈地感受到了手機(jī)軟件開發(fā)與傳統(tǒng)的桌面和服務(wù)器編程的巨大差異。Symbian OS有兩項功能的表現(xiàn)非常出色:高效地使用電力,以及在處理錯誤時避免資源泄漏。向開發(fā)者講授各種設(shè)計技術(shù),以便讓軟件遵循這些特點(diǎn),這已經(jīng)成為我的主要任務(wù),而這些設(shè)計模式使這一任務(wù)變得簡單。本書構(gòu)建在Symbian Press出版社的其他書籍對Symbian OS的介紹之上。即使您已經(jīng)很好地理解了如何使用異常退出與捕獲、活動對象、GUI控件以及通信API,您仍需要知道如何高效地設(shè)計架構(gòu)和組件接口,以便高效地使用這些機(jī)制。這正是本書的價值所在。本書描述了那些參與設(shè)計Symbian OS、它的應(yīng)用程序以及基礎(chǔ)結(jié)構(gòu)的架構(gòu)師們的思想,并用一些很小的篇幅告訴我們他們是如何做到的,從而讓我們可以在他們的工作基礎(chǔ)之上進(jìn)行構(gòu)建。雖然我是一名經(jīng)驗豐富的Symbian OS程序員,但我仍然從管理安全插件和進(jìn)程協(xié)同模式的描述中學(xué)到了一些新知識。如果對Symbian OS開發(fā)沒有多少經(jīng)驗,那么請您將重點(diǎn)放在進(jìn)程間通信、資源管理和事件處理的講解和慣用語上。模式格式如何幫助您學(xué)習(xí)呢?有關(guān)模式的書籍需要在描述量和參考文本之間取得折中??梢詫⒚總€模式作為單獨(dú)的論文來閱讀,但是規(guī)范的模式格式也可以讓瀏覽所有模式并弄清楚哪些模式涉及哪些方面變得更容易。因此,請不要認(rèn)為這是一本需要從頭讀到尾的書(如果您喜歡也可以這樣做)。相反,可以使用它設(shè)計好的方式來瀏覽每個模式的概要:名稱、目的和描述,并隨自己的喜好閱讀您認(rèn)為較為有趣或者已經(jīng)大量使用的每個模式的內(nèi)容。在從事Symbian OS項目和設(shè)計時,您將發(fā)現(xiàn)自己會遇到一些問題,它們會讓您回憶起本書中的一個或多個解決方案——那時可以回過頭來看看具體實(shí)現(xiàn)的細(xì)節(jié)。本書將化身成一位靠在您肩頭的經(jīng)驗豐富的設(shè)計師,口中說道:“沒錯,看一看某某模式,找一找解決這個問題的辦法,同時不要忘記考慮這些問題”。正是經(jīng)驗豐富的設(shè)計師成就了偉大的架構(gòu)。只要仔細(xì)閱讀了本書,不管您從事的是什么職業(yè),我敢打賭,您一定會找到您感興趣的技術(shù)——或者某種技術(shù)的實(shí)現(xiàn)。而且您會發(fā)現(xiàn)(就像我一樣),您能夠?qū)W到很多有關(guān)如何最佳設(shè)計Symbian OS應(yīng)用程序和服務(wù)的知識。我真心希望通過學(xué)習(xí)本書您能夠成功地為世界上最流行的移動平臺設(shè)計軟件!
內(nèi)容概要
本書匯集了Symbian公司一些最杰出的軟件工程師的智慧和經(jīng)驗,并將這些專家的知識提煉成一組通用的設(shè)計模式, 在設(shè)計Symbian智能手機(jī)軟件時您可以合理地使用這些設(shè)計模式?! ”緯荚趲椭鉀Q在智能手機(jī)平臺軟件開發(fā)中經(jīng)常遇到的各種難題。了解潛在問題,同時掌握用來解決這些問題的模式,您就能夠在設(shè)計和實(shí)現(xiàn)健壯高效的Symbian OS應(yīng)用和服務(wù)程序方面具有搶先起步的優(yōu)勢。 本書涵蓋的所有模式都針對Symbian OS進(jìn)行了專門的適配。書中的11個完整示例詳細(xì)說明了每種模式的工作原理,它們都采用SymbianC++語言實(shí)現(xiàn),以便于您改寫這些示例,將其用于自己編寫的軟件中。
作者簡介
Nicholas Addo Nicholas從事Symbian OS開發(fā)工作已六年了。他最初加入的是Symbian的瀏覽器技術(shù)(Browser Technology)小組,從事一個通用的內(nèi)容處理框架的開發(fā)工作。后來,他轉(zhuǎn)到個人信息管理(Personal Information Management)小組,從事企業(yè)集團(tuán)調(diào)度(Enterprise Group Sc
書籍目錄
第1章 引言 1.1 關(guān)于本書 1.2 目標(biāo)讀者 1.3 本書適用的Symbian OS版本 1.4 通用設(shè)計模式 1.5 Symbian OS模式 1.5.1 基于Symbian OS的軟件約束 1.5.2 Symbian OS上下文中的重要約束 1.5.3 其他約束 1.5.4 已經(jīng)就位的模式元素 1.6 設(shè)計模式的模板 1.6.1 模式名稱 1.6.2 目的 1.6.3 別名 1.6.4 問題 1.6.5 解決方案 1.6.6 其他已知的應(yīng)用 1.6.7 變種和擴(kuò)展 1.6.8 參考資料 1.7 本書結(jié)構(gòu) 1.8 其他信息來源 第2章 錯誤處理策略 2.1 快速失敗 2.1.1 目的 2.1.2 別名 2.1.3 問題 2.1.4 解決方案 2.1.5 其他已知應(yīng)用 2.1.6 變種和擴(kuò)展 2.1.7 參考資料 2.2 逐步提升錯誤 2.2.1 目的 2.2.2 別名 2.2.3 問題 2.2.4 解決方案 2.2.5 其他已知應(yīng)用 2.2.6 變種和擴(kuò)展 2.2.7 參考資料 第3章 資源的生存期 3.1 永久分配 3.1.1 目的 3.1.2 別名 3.1.3 問題 3.1.4 解決方案 3.1.5 其他已知應(yīng)用 3.1.6 變種和擴(kuò)展 3.1.7 參考資料 3.2 延遲分配 3.2.1 目的 3.2.2 別名 3.2.3 問題 3.2.4 解決方案 3.2.5 其他已知應(yīng)用 3.2.6 變種和擴(kuò)展 3.2.7 參考資料 3.3 延遲釋放 3.3.1 目的 3.3.2 別名 3.3.3 問題 3.3.4 解決方案 3.3.5 其他已知應(yīng)用 3.3.6 變種和擴(kuò)展 3.3.7 參考資料 第4章 事件驅(qū)動編程 4.1 事件混入 4.1.1 目的 4.1.2 別名 4.1.3 問題 4.1.4 解決方案 4.1.5 其他已知應(yīng)用 4.1.6 變種和擴(kuò)展 4.1.7 參考資料 4.2 請求完成 4.2.1 目的 4.2.2 別名 4.2.3 問題 4.2.4 解決方案 4.2.5 其他已知應(yīng)用 4.2.6 變種和擴(kuò)展 4.2.7 參考資料 4.3 發(fā)布和訂閱 4.3.1 目的 4.3.2 別名 4.3.3 問題 4.3.4 解決方案 4.3.5 其他已知應(yīng)用 4.3.6 變種和擴(kuò)展 4.3.7 參考資料 第5章 協(xié)同式多任務(wù) 第6章 提供服務(wù) 第7章 安全 第8章 優(yōu)化執(zhí)行時間 第9章 將知名的模式映射到Symbian OS 附錄A 對反復(fù)出現(xiàn)的結(jié)果的影響分析 參考文獻(xiàn)
章節(jié)摘錄
插圖:可預(yù)測RAM的使用情況擁有有限的可用內(nèi)存的一個必然結(jié)果是,在某個時候它會被用光。在某些情況下,這會給設(shè)備帶來災(zāi)難性的后果。例如,如果某個終端用戶正試著撥打救護(hù)電話,那么就不應(yīng)該讓電話功能因為軟件分配不到足夠的內(nèi)存而失敗。但是在更多情況下,如果能夠預(yù)測內(nèi)存的使用情況,就意味著自己的軟件可以事先做好準(zhǔn)備并在關(guān)鍵路徑之外處理由于內(nèi)存分配而帶來的副作用。這就可以在不影響主要功能的條件下處理任何錯誤以及分配所需的時間。為了減少這個因素帶來的影響,可能不得不采取一個折中的辦法,即在那些高估實(shí)際使用內(nèi)存的地方使用更多的內(nèi)存。盡量少用次級存儲次級存儲是存儲代碼、只讀數(shù)據(jù)和永久數(shù)據(jù)的區(qū)域。大多數(shù)Synlbian OS設(shè)備通過提供閃速存儲器區(qū)域來支持次級存儲,盡管有些設(shè)備也存在硬盤驅(qū)動器。在所有的移動設(shè)備中,次級存儲的總量均是受限制的。有一點(diǎn)也需要記?。涸L問次級存儲要比訪問內(nèi)存慢得多。另一個需要考慮的因素是,次級存儲在使用的過程中要遭受消耗和性能降級,不過在編寫軟件時這通常不是一個重要的考慮因素,除非您是設(shè)備設(shè)計者。盡量縮短執(zhí)行時間一個軟件的執(zhí)行時間可以有很多種含義。通常您所關(guān)注的是某個特殊的用例,要么是它啟動某個應(yīng)用程序的時間,要么是響應(yīng)終端用戶按下某個鍵的時間,并且希望計量從用例開始到用例結(jié)束的時間。也可以將軟件在用例期間活躍的時間納入考慮之中。但是,我們主要關(guān)注的是讓用例在盡可能短的時間里執(zhí)行完畢。一個用例幾乎總會受到某個瓶頸的限制。這個瓶頸可能會是CPU,但也可能會是一些其他的硬件限制,例如,從次級存儲中讀取數(shù)據(jù),或者是網(wǎng)絡(luò)帶寬的限制。
編輯推薦
《Symbian OS通用設(shè)計模式》:書中列舉的模式主要闡釋了以下內(nèi)容:·高效的錯誤處理·用于Symbiarl智能手機(jī)受限資源的高效處理技術(shù)·用于減少電力消耗的事件驅(qū)動編程技術(shù)·如何利用Syrrlbiarl OS的協(xié)同式多任務(wù)框架·如何單個地或同時地向多個客戶端提供服務(wù)·如何利用平臺安全架構(gòu)來增強(qiáng)自己編寫的應(yīng)用程序和服務(wù)的安全性·如何優(yōu)化執(zhí)行速度和啟動時間·Symbian OS上的一些知名設(shè)計模式的操作,如適配器、單例以及模型一視圖一控制器不管您是設(shè)備設(shè)計者還是應(yīng)用程序開發(fā)者,通過學(xué)習(xí)《Symbian OS通用設(shè)計模式》您會發(fā)現(xiàn),所有這些模式都有助于您在編寫軟件時更好地利用Symbian智能手機(jī)獨(dú)有的特性。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載