爱生活,爱IT
全部博文(436)
分类:
2010-10-19 12:44:17
《C Interfaces and Implementations: Techniques for Creating Reusable Software》
参考译名《C接口和实现:创建可重复使用的软件技术》
全文下载地址:
Every programmer and software project manager must master the art of creating reusable software modules; they are the building blocks of large, reliable applications. Unlike some modern object-oriented languages, C provides little linguistic support or motivation for creating reusable application programming interfaces (APIs). While most C programmers use APIs and the libraries that implement them in almost every application they write, relatively few programmers create and disseminate new, widely applicable APIs. C Interfaces and Implementations shows how to create reusable APIs using interface-based design, a language-independent methodology that separates interfaces from their implementations. This methodology is explained by example. The author describes in detail 24 interfaces and their implementations, providing the reader with a thorough understanding of this design approach.
Features of C Interfaces and Implementations:
A guided tour of the code that implements each chapter's interface tp help those modifying or extending an interface or designing related interfaces.
In-depth focus on "algorithm engineering:" how to package data structures and related algorithms into reusable modules.
Source code for 24 APIs and 8 sample applications is examined, with each presented as a "literate program" in which a thorough explanation is interleaved with the source code.
Booknews
Shows how to create reusable APIs using interface-based design, a language-independent methodology that separates interfaces from their implementations. Details 24 interfaces and their implementations and looks at eight sample applications, presenting them as literate programs with explanations interwoven with source code. Focuses on algorithm engineering and how to package data structures and related algorithms into reusable models. For C programmers, and students with a previous undergraduate introductory programming course.