Object-Oriented Software Design in C++
eBook - ePub

Object-Oriented Software Design in C++

  1. 520 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Object-Oriented Software Design in C++

About this book

Learn the fundamentals of Object-Oriented design by investigating good—and bad—code! Well-designed applications run more efficiently, have fewer bugs, and are easier to revise and maintain. Using an engaging "before-and-after" approach, Object-Oriented Software Design in C++ shows you exactly what bad software looks like and how to fix it with good design principles and patterns.In Object-Oriented Software Design in C++, you'll find:

  • Design-code-test iterations that improve code with each revision
  • Gathering requirements to make sure you're developing the right application
  • Design principles like encapsulation and delegation that solve programming problems
  • Design patterns including Observer Design Pattern that fix architecture issues
  • Using recursion and multithreading to simplify common solutions


Object-Oriented Software Design in C++ is a vital guide to building the kind of high performance applications delivered by the pros—all using industry-proven design principles and patterns. You'll learn how to gather and analyze requirements so you're building exactly what your client is looking for, backtrack mistakes with iterative development, and build a toolbox of design patterns that troubleshoot common issues with application architecture. The book's accessible examples are written in C++ 17, but its universal principles can be applied to any object-oriented language. Purchase of the print book includes a free eBook in PDF and ePub formats from Manning Publications. About the technology Good design is the foundation of great software. Mastering the principles of object-oriented design is the surest way to create applications that run fast, have few bugs, and last well into the future. Written especially for new C++ programmers, this easy-to-read book gently mentors you in the art of designing great software. About the book Object-Oriented Software Design in C++ introduces object-oriented design principles, practices, and patterns in clear, jargon-free language. The instantly-familiar before-and-after examples highlight the benefits of good design. Each chapter is full of friendly conversations that anticipate your questions and help point out the subtleties you might overlook. Along the way, you'll pick up tips about idiomatic C++ style that will set your code apart. What's inside

  • Design-code-test iterations
  • Design principles for common programming problems
  • Architecture design patterns in plain English
  • Recursion and multithreading

About the reader Examples are in C++ 17. About the author Ronald Mak is a former NASA senior scientist. Currently, he teaches computer science at San Jose State University.The technical editor on this book was Juan Rufes. Table of Contents PART 1
1 The path to well-designed software
2 Iterate to achieve good design
PART 2
3 Get requirements to build the right application
4 Good class design to build the application right
PART 3
5 Hide class implementations
6 Don't surprise your users
7 Design subclasses right
PART 4
8 The Template Method and Strategy Design Patterns
9 The Factory Method and Abstract Factory Design Patterns
10 The Adapter and FaƧade Design Patterns
11 The Iterator and Visitor Design Patterns
12 The Observer Design Pattern
13 The State Design Pattern
14 The Singleton, Composite, and Decorator Design Patterns
PART 5
15 Designing solutions with recursion and backtracking
16 Designing multithreaded programs

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Object-Oriented Software Design in C++ by Ronald Mak in PDF and/or ePUB format, as well as other popular books in Computer Science & Object Oriented Programming. We have over one million books available in our catalogue for you to explore.

Information

Table of contents

  1. Object-Oriented Software Design in C++
  2. Copyright
  3. contents
  4. front matter
  5. Part 1. Introduction
  6. 1 The path to well-designed software
  7. 2 Iterate to achieve good design
  8. Part 2. Design the right application
  9. 3 Get requirements to build the right application
  10. 4 Good class design to build the application right
  11. Part 3. Design the application right
  12. 5 Hide class implementations
  13. 6 Don’t surprise your users
  14. 7 Design subclasses right
  15. Part 4. Design patterns solve application architecture problems
  16. 8 The Template Method and Strategy Design Patterns
  17. 9 The Factory Method and Abstract Factory Design Patterns
  18. 10 The Adapter and FaƧade Design Patterns
  19. 11 The Iterator and Visitor Design Patterns
  20. 12 The Observer Design Pattern
  21. 13 The State Design Pattern
  22. 14 The Singleton, Composite, and Decorator Design Patterns
  23. Part 5. Additional Design Techniques
  24. 15 Designing solutions with recursion and backtracking
  25. 16 Designing multithreaded programs
  26. index