Title Statements
- Full title :Object-oriented design choices / Adair Dingle.
Summary
"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"--
Read More ↓Edition Statements
- Publication Date:©2021
- Edition:First edition
Publication Statements
- Publisher(s):CRC Press, Taylor & Francis Group
- Place of Publication:Boca Raton, FL
- Language:eng
- Publication Date:©2021
Notes
"A Chapman & Hall book."
The Physical Object
- Description:1 online resource (xx, 328 pages) : : illustrations
Edition Identifiers
- ISBN:9781003013488, 1003013481, 9781000338102, 100033810X, 9781000338126, 1000338126, 9781000338089, 1000338088
- oclc:on1235966968
- LC Classification:QA76.64
- Dewey Decimal:005.117
Table of Contents
Section I: Stable type design. Contractual design and the class construct -- Ownership: abstracted but tracked -- Data integrity -- Section II: Strategic type coupling. Composition -- Inheritance -- Inheritance versus composition -- Section III: Effective type reuse. Design longevity -- Operator overloading -- Appendix A: The Pointer Construct -- Appendix B: Design exercises -- Appendix C: Comparative design exercises.
Read More ↓
Rate & Review