API Design for C++
The design of application programming interfaces can affect the behavior, capabilities, stability, and ease of use of end-user applications. With this book, you will learn how to design a good API for large-scale long-term projects. With extensive C++ code to illustrate each concept, API Design for C++ covers all of the strategies of world-class API development. Martin Reddy ...
The design of application programming interfaces can affect the behavior, capabilities, stability, and ease of use of end-user applications. With this book, you will learn how to design a good API for large-scale long-term projects. With extensive C++ code to illustrate each concept, API Design for C++ covers all of the strategies of world-class API development. Martin Reddy draws on over fifteen years of experience in the software industry to offer in-depth discussions of interface design, documentation, testing, and the advanced topics of scripting and plug-in extensibility. Throughout, he focuses on various API styles and patterns that will allow you to produce elegant and durable libraries.
The only book that teaches the strategies of C++ API development, including design, versioning, documentation, testing, scripting, and extensibility. Extensive code examples illustrate each concept, with fully functional examples and working source code for experimentation available online. Covers various API styles and patterns with a focus on practical and efficient designs for large-scale long-term projects.
作者簡介:
Martin Reddy
博士是軟件行業(yè)的一名老兵,有著15年以上的從業(yè)經(jīng)驗(yàn),共撰寫過40多篇論文,擁有3項(xiàng)軟件專利,并與他人合著了Level of Detail for 3D Graphics。另外,他還是ACM以及IEEE的會(huì)員。
早年,他曾在SRI International供職5年,主要從事分布式三維地形可視化技術(shù)方面的工作,他成功創(chuàng)建了在Web上描述3D地球空間信息模型的ISO標(biāo)準(zhǔn),并且還連續(xù)兩年被選為Web3D協(xié)會(huì)的會(huì)長。
他曾在Pixar動(dòng)畫工作室工作過6年,擔(dān)任內(nèi)部動(dòng)畫系統(tǒng)的首席工程師,設(shè)計(jì)并實(shí)現(xiàn)了很多高性能API,這些API在一些奧斯卡獲獎(jiǎng)及提名影片的制作中都發(fā)揮了關(guān)鍵作用,這些影片有《海底總動(dòng)員》、《超人總動(dòng)員》、《賽車總動(dòng)員》、《料理鼠王》,以及《機(jī)器人總動(dòng)員》等。
他還開辦了一家咨詢公司Code Reddy,為各家...
作者簡介:
Martin Reddy
博士是軟件行業(yè)的一名老兵,有著15年以上的從業(yè)經(jīng)驗(yàn),共撰寫過40多篇論文,擁有3項(xiàng)軟件專利,并與他人合著了Level of Detail for 3D Graphics。另外,他還是ACM以及IEEE的會(huì)員。
早年,他曾在SRI International供職5年,主要從事分布式三維地形可視化技術(shù)方面的工作,他成功創(chuàng)建了在Web上描述3D地球空間信息模型的ISO標(biāo)準(zhǔn),并且還連續(xù)兩年被選為Web3D協(xié)會(huì)的會(huì)長。
他曾在Pixar動(dòng)畫工作室工作過6年,擔(dān)任內(nèi)部動(dòng)畫系統(tǒng)的首席工程師,設(shè)計(jì)并實(shí)現(xiàn)了很多高性能API,這些API在一些奧斯卡獲獎(jiǎng)及提名影片的制作中都發(fā)揮了關(guān)鍵作用,這些影片有《海底總動(dòng)員》、《超人總動(dòng)員》、《賽車總動(dòng)員》、《料理鼠王》,以及《機(jī)器人總動(dòng)員》等。
他還開辦了一家咨詢公司Code Reddy,為各家軟件公司提供技術(shù)咨詢,主要客戶有Linden Lab和Planet 9 Studios,為大型在線3D虛擬世界《第二人生》設(shè)計(jì)了API并改善了其基本架構(gòu)。
現(xiàn)在他擔(dān)任ToyTalk公司的首席技術(shù)官。
譯者簡介:
劉曉娜
中國科學(xué)院計(jì)算技術(shù)研究所員工,在職博士,從事網(wǎng)絡(luò)大數(shù)據(jù)采集及挖掘方面的研究,愛好讀書、翻譯和旅游。
臧秀濤
碩士畢業(yè)于中國科學(xué)院計(jì)算技術(shù)研究所。曾從事網(wǎng)絡(luò)游戲、操作系統(tǒng)方面的開發(fā)工作。熱愛技術(shù)、讀書和翻譯。
林健
中國科學(xué)院計(jì)算技術(shù)研究所博士生,從事機(jī)群與網(wǎng)格計(jì)算方面的研究,愛好DIY、開源軟件與技術(shù)寫作。
