C++ API設(shè)計
現(xiàn)代軟件開發(fā)中的一大難題就是如何編寫優(yōu)質(zhì)的API。API負責(zé)為某個組件提供邏輯接口并隱藏該模塊的內(nèi)部細節(jié)。多數(shù)程序員依靠的是經(jīng)驗和冒險,從而很難達到健壯、高效、穩(wěn)定、可擴展性強的要求。Martin Reddy博士在自己多年經(jīng)驗基礎(chǔ)之上,對于不同API風(fēng)格與模式,總結(jié)出了API設(shè)計的種種最佳策略,著重針對大規(guī)模長期開發(fā)項目,輔以翔實的代碼范例,從而有助于設(shè)計決策的成功實施,以及軟件項目的健壯性及穩(wěn)定性的實現(xiàn)。
主要內(nèi)容:
API簡介及其特點
API的一些設(shè)計模式及慣用法
影響API的設(shè)計的一些C++特性
把控API的風(fēng)格與性能
版本控制與文檔化的實現(xiàn)
各種優(yōu)秀的測試方法
如何創(chuàng)建腳本綁定,以便API能被諸如Ruby和Python等語言調(diào)用
可擴展性API的基本實現(xiàn)方式
類庫的編譯器實現(xiàn)
作者簡介:
Martin Reddy
博士是軟件行業(yè)的一名老兵,有著15年以上的從業(yè)經(jīng)驗,共撰寫過40多篇論文,擁有3項軟件專利,并與他人合著了Level of Detail for 3D Graphics。另外,他還是ACM以及IEEE的會員。
早年,他曾在SRI International供職5年,主要從事分布式三維地形可視化技術(shù)方面的工作,他成功創(chuàng)建了在Web上描述3D地球空間信息模型的ISO標(biāo)準(zhǔn),并且還連續(xù)兩年被選為Web3D協(xié)會的會長。
他曾在Pixar動畫工作室工作過6年,擔(dān)任內(nèi)部動畫系統(tǒng)的首席工程師,設(shè)計并實現(xiàn)了很多高性能API,這些API在一些奧斯卡獲獎及提名影片的制作中都發(fā)揮了關(guān)鍵作用,這些影片有《海底總動員》、《超人總動員》、《賽車總動員》、《料理鼠王》,以及《機器人總動員》等。
他還開辦了一家咨詢公司Code Reddy,為各家...
作者簡介:
Martin Reddy
博士是軟件行業(yè)的一名老兵,有著15年以上的從業(yè)經(jīng)驗,共撰寫過40多篇論文,擁有3項軟件專利,并與他人合著了Level of Detail for 3D Graphics。另外,他還是ACM以及IEEE的會員。
早年,他曾在SRI International供職5年,主要從事分布式三維地形可視化技術(shù)方面的工作,他成功創(chuàng)建了在Web上描述3D地球空間信息模型的ISO標(biāo)準(zhǔn),并且還連續(xù)兩年被選為Web3D協(xié)會的會長。
他曾在Pixar動畫工作室工作過6年,擔(dān)任內(nèi)部動畫系統(tǒng)的首席工程師,設(shè)計并實現(xiàn)了很多高性能API,這些API在一些奧斯卡獲獎及提名影片的制作中都發(fā)揮了關(guān)鍵作用,這些影片有《海底總動員》、《超人總動員》、《賽車總動員》、《料理鼠王》,以及《機器人總動員》等。
他還開辦了一家咨詢公司Code Reddy,為各家軟件公司提供技術(shù)咨詢,主要客戶有Linden Lab和Planet 9 Studios,為大型在線3D虛擬世界《第二人生》設(shè)計了API并改善了其基本架構(gòu)。
現(xiàn)在他擔(dān)任ToyTalk公司的首席技術(shù)官。
譯者簡介:
劉曉娜
中國科學(xué)院計算技術(shù)研究所員工,在職博士,從事網(wǎng)絡(luò)大數(shù)據(jù)采集及挖掘方面的研究,愛好讀書、翻譯和旅游。
臧秀濤
碩士畢業(yè)于中國科學(xué)院計算技術(shù)研究所。曾從事網(wǎng)絡(luò)游戲、操作系統(tǒng)方面的開發(fā)工作。熱愛技術(shù)、讀書和翻譯。
林健
中國科學(xué)院計算技術(shù)研究所博士生,從事機群與網(wǎng)格計算方面的研究,愛好DIY、開源軟件與技術(shù)寫作。
