Use Code SAVEBIG for 10% Off on All eBooks! Explore Now!
eBook - Pdf
Good software design is essential for the success of your project, but designing software is hard to do. You need to have a deep understanding of the consequences of design decisions and a good overview of available design alternatives. With this book, experienced C++ developers will get a thorough, practical, and unparalleled overview of software design with this modern language.
C++ trainer and consultant Klaus Iglberger explains how you can manage dependencies and abstractions, improve changeability and extensibility of software entities, and apply and implement modern design patterns to help you take advantage of today’s possibilities. Software design is the most essential aspect of a software project because it impacts the software’s most important properties: maintainability, changeability, and extensibility.Learn how to evaluate your code with respect to software designUnderstand what software design is, including design goals such as changeability and extensibilityExplore the advantages and disadvantages of each design approachLearn how design patterns help solve problems and express intentChoose the right form of a design pattern to get the most out of its advantages
Klaus Iglberger is a freelance C++ trainer and consultant. He completed his PhD in Computer Science in 2010 and has subsequently concentrated on large-scale C++ software design. He shares his expertise through popular C++ courses all around the world. He is also the creator and lead designer of the Blaze C++ math library (https://bitbucket.org/blaze-lib/blaze/), one of the organizers of the Munich C++ user group (MUC++) (https://www.meetup.com//MUCplusplus/), and the (co-)organizer of the Back-to-Basics (https://cppcon.org/b2b/) and Software Design (https://cppcon.org/softwaredesign/) tracks at CppCon (https://cppcon.org).