Object-oriented design choices / Adair Dingle.

Author/creator Dingle, Adair
Format Electronic
EditionFirst edition.
Publication InfoBoca Raton : CRC Press, 2021.
Descriptionxx, 328 pages : illustrations ; 24 cm
Supplemental ContentFull text available from Taylor & Francis eBooks
Subjects

Abstract "Do modern programming languages, IDEs and libraries make coding easy? Maybe, but coding is not design. Large-scale or expensive apps clearly require evaluation of design choices. Still, software design directly impacts code reuse and longevity even for small-scale apps with limited overhead. This text evaluates and contrast common object-oriented designs. A given problem may have many solutions. A developer may employ different design techniques - composition, inheritance, dependency injection, delegation, etc. - to solve a particular problem. A skilled developer can determine the costs and benefits of different design responses, even amid competing concerns. A responsible developer documents design choices as a contract with the client, delineating external and internal responsibilities. To promote effective software design, this book examines contractual, object-oriented designs for immediate and sustained use as well as code reuse. The intent of identifying design variants is to recognize and manage conflicting goals such as: short versus long-term utility, stability versus flexibility, storage versus computation. Many examples are given to evaluate and contrast different solutions, and to compare C# and C++ effects. No one has a crystal ball. However, deliberate design promotes software longevity. With the prominence of legacy OO code, a clear understanding of different object-oriented designs is essential"-- Provided by publisher.
Bibliography noteIncludes bibliographical references and index.
Access restrictionAvailable only to authorized users.
Technical detailsMode of access: World Wide Web
Genre/formElectronic books.
LCCN 2020043691
ISBN9780367820183 (paperback)
ISBN9780367820817 (hardback)
ISBN(ebook)

Availability

Library Location Call Number Status Item Actions
Electronic Resources Access Content Online ✔ Available