๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Object-Oriented Design Choices

โœ Scribed by Adair Dingle


Publisher
Routledge
Year
2021
Tongue
English
Leaves
348
Edition
1
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Synopsis


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 contrasts 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, and 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.

Design questions abound. Is code reuse better with inheritance or composition? Should composition rely on complete encapsulation? Design choices impact flexibility, efficiency, stability, longevity, and reuse, yet compilers do not enforce design and syntax does not necessarily illustrate design. Through deliberate design, or redesign when refactoring, developers construct sustainable, efficient code.


๐Ÿ“œ SIMILAR VOLUMES


Object-Oriented Design Heuristics
โœ Arthur J. Riel ๐Ÿ“‚ Library ๐Ÿ“… 1996 ๐Ÿ› Addison-Wesley Professional ๐ŸŒ English

Object-Oriented Design Heuristics offers insight into object-oriented design improvement. The more than sixty guidelines presented in this book are language-independent and allow you to rate the integrity of a software design. The heuristics are not written as hard and fast rules; they are meant to

Designing Object-Oriented Software
โœ Rebecca Wirfs-Brock, Brian Wilkerson, Lauren Wiener ๐Ÿ“‚ Library ๐Ÿ“… 1990 ๐Ÿ› Prentice Hall ๐ŸŒ English

<P> <B> </B> Practical and down-to-earth in approach, this bestseller explores the art of designing object-oriented software. It offers basic design principles and a specific design process that can be applied to any software programming effort -- even those not using object-oriented programmi

Object-Oriented Design and Patterns
โœ Cay S. Horstmann ๐Ÿ“‚ Library ๐Ÿ“… 2005 ๐Ÿ› Wiley ๐ŸŒ English

Reviewer: Dr. Alexander Yakhnis, [email protected] I like the book and have taught Spring 2004 Object-oriented Development (CSC 429 ) course at SUNY College at Brockport, New York. I have taught the material from Chapter I through 6. I have also used the material from Ch. 8 Object-Oriented Fra

Object-Oriented Analysis and Design
โœ Sarnath Ramnath, Brahma Dathan (auth.), Sarnath Ramnath, Brahma Dathan (eds.) ๐Ÿ“‚ Library ๐Ÿ“… 2011 ๐Ÿ› Springer-Verlag London ๐ŸŒ English

<p>Object-oriented analysis and design (OOAD) has over the years, become a vast field, encompassing such diverse topics as design process and principles, documentation tools, refactoring, and design and architectural patterns. For most students the learning experience is incomplete without implement