Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Deciphering Object-Oriented Programming with C++ [WARNING: NOT FOR USE IN OTHER MATERIAL/SEE CONTRACT]
Deciphering Object-Oriented Programming with C++ [WARNING: NOT FOR USE IN OTHER MATERIAL/SEE CONTRACT]

Deciphering Object-Oriented Programming with C++ [WARNING: NOT FOR USE IN OTHER MATERIAL/SEE CONTRACT]: A practical, in-depth guide to implementing object-oriented design principles to create robust code

eBook
£28.99
Paperback
£35.99
Subscription
Free Trial
Renews at £9.99p/m

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Key benefits

  • Apply object-oriented design concepts in C++ using direct language features and refined programming techniques
  • Discover sophisticated programming solutions with nuances to become an efficient programmer
  • Explore design patterns as proven solutions for writing scalable and maintainable C++ software

Description

Even though object-oriented software design enables more easily maintainable code, companies choose C++ as an OO language for its speed. Object-oriented programming in C++ is not automatic – it is crucial to understand OO concepts and how they map to both C++ language features and OOP techniques. Distinguishing your code by utilizing well-tested, creative solutions, which can be found in popular design patterns, is crucial in today’s marketplace. This book will help you to harness OOP in C++ to write better code. Starting with the essential C++ features, which serve as building blocks for the key chapters, this book focuses on explaining fundamental object-oriented concepts and shows you how to implement them in C++. With the help of practical code examples and diagrams, you’ll learn how and why things work. The book’s coverage furthers your C++ repertoire by including templates, exceptions, operator overloading, STL, and OO component testing. You’ll discover popular design patterns with in-depth examples and understand how to use them as effective programming solutions to solve recurring OOP problems. By the end of this book, you’ll be able to employ essential and advanced OOP concepts to create enduring and robust software.

Who is this book for?

Programmers wanting to utilize C++ for OOP will find this book essential to understand how to implement OO designs in C++ through both language features and refined programming techniques while creating robust and easily maintainable code. This OOP book assumes prior programming experience; however, if you have limited or no prior C++ experience, the early chapters will help you learn essential C++ skills to serve as the basis for the many OOP sections, advanced features, and design patterns.

What you will learn

  • Quickly learn core C++ programming skills to develop a base for essential OOP features in C++
  • Implement OO designs using C++ language features and proven programming techniques
  • Understand how well-designed, encapsulated code helps make more easily maintainable software
  • Write robust C++ code that can handle programming exceptions
  • Design extensible and generic code using templates
  • Apply operator overloading, utilize STL, and perform OO component testing
  • Examine popular design patterns to provide creative solutions for typical OO problems

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Sep 23, 2022
Length: 594 pages
Edition : 1st
Language : English
ISBN-13 : 9781804611081
Category :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : Sep 23, 2022
Length: 594 pages
Edition : 1st
Language : English
ISBN-13 : 9781804611081
Category :

Packt Subscriptions

See our plans and pricing
Modal Close icon
£9.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
£99.99 billed annually
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just £5 each
Feature tick icon Exclusive print discounts
£139.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just £5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total £ 107.97
Deciphering Object-Oriented Programming with C++ [WARNING: NOT FOR USE IN OTHER MATERIAL/SEE CONTRACT]
£35.99
Test-Driven Development with C++
£35.99
C++20 STL Cookbook
£35.99
Total £ 107.97 Stars icon
Visually different images

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Full star icon 5
(13 Ratings)
5 star 100%
4 star 0%
3 star 0%
2 star 0%
1 star 0%
Filter icon Filter
Top Reviews

Filter reviews by




N/A Feb 21, 2024
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Feefo Verified review Feefo
Brian Smyth Mar 06, 2023
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This is an excellent book for the intro level C++ student as well as more advanced students. The most important aspect of a good C++ developer is understanding good OOD/P. Ms Kirk breaks down complex and difficult elements of OOP to advance even a knowledgeable C++ developer. The complexities of abstraction, multiple inheritance, templates and leveraging patterns and the dangers of using them poorly is explained in simple yet complete concepts for all student levels. It's a must have book.
Amazon Verified review Amazon
H Gregory Silber Sep 26, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Firstly, I was excited to see a new OOP text focused on C++ as a programming language. There has been a trend to simplify the teaching of OOP through using higher level languages; however, these languages often obscure the underlying structure and complexity for various tasks. This text does an admirable job of covering both the C++ language and Object-Oriented principles side by side through interesting examples and well written discussions. The questions at the end of each section are well designed to highlight the concepts, and test for common misconceptions.While not the core purpose of the book, I found the discussions on indirect addressing particularly well-constructed. This is the single most common issue for students learning C/C++. The way the author presents the material is clear and easy to understand. By stressing the hardware implications (layout, etc.) the author makes this difficult topic accessible. Even if programmers may prefer smart pointers (which the author also covers), students need to understand indirect addressing at its core, as a key programming concept that they will inevitably need to utilize and understand well.Part 2 of the text really gets to the heart of C++'s power for object-oriented programming. The chapter (7) on polymorphism goes deeper than many texts into the actual implementation of polymorphism (vtable) to help the reader understand not just that it works, but how and why it works. I also liked the way the author handled the controversial topic of multiple inheritance.The discussions of some of the newer or more obscure features of C++ including templates, the STL, smart pointers, and exception handling is well done, and follows smoothly from the previous sections.My favorite part of the text is part 4 which discusses design patterns. Often, when teaching OOP, we spend so much time on the language constructs that we ignore the higher-level concepts of how we build applications. The author justifies each design pattern with appropriate use cases to show not just how to implement these patterns, but when they are appropriate, and how they simplify design. The examples are simple, yet sufficient to get the concepts across.If I have a complaint with the text, it is that it is encompasses so many topics that it would be very difficult to cover the material in a single semester which is often all that is available to courses on OOP at the undergraduate level, especially while teaching the language at the same time.As a faculty member who teaches undergraduate courses, I think this is an excellent introductory text for OOP and the C++ language applicable to undergraduate students as well as being a useful reference for them throughout their careers. If possible, I will use this text with future classes.
Amazon Verified review Amazon
Anand Iyengar Oct 22, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Great book. I bought it as a reference and am super happy that I did. This is an excellent book on C++ and object oriented programming. It has great explanations on the language - it covers higher level features like templates and polymorphism, and also low level details like the mechanics of v-tables. There are plenty of code examples and with explanations, making it easy to follow along with a computer and better understand. The structure of the book works well both for people newly learning the language and also for more experienced engineers to use as a reference.The way the book covers C++ and the detail that it goes into make it a great way to learn the language. It goes from basics to advanced parts of the language and has lots of examples and code. It covers object oriented programming, as well.The book starts with C++ basics and then covers object oriented concepts and maps them to C++ (classes, single and multiple inheritance, polymorphism, ...). The middle part of the book goes into detail about the language - features (eg. exceptions, operator overloading, templates, the Standard Template Library). It also covers important details like r-value references and move/move-copy constructors. The book also covers very important design patterns - this includes Observers, Factories, Adapters, Singletons, and Opaque Pointers, which are very commonly used in industry. It also has section on safe programming in C++, which is especially important with C++ relatively transparent memory access model; it covers smart pointers and ways to program safely, including thread safety and multi-threaded programming. Also the book's chapters include a section at the end with questions to help learn the language.The structure of the book also makes it an excellent as a reference. There is effectively a 3 level hierarchy that the book uses to lay out the material that makes it especially good as a language reference: Parts > Chapters > Sections. The 5 Parts of the book break the language into areas: basics and essentials, object oriented concepts, key C++ concepts, design patterns, and safety. Each Part starts with a summary of what the chapters in that Part will cover. There are 21 chapters to present these different parts of the language. Each chapter is broken up into sections, making it easy to jump to what is need. Each chapter in the book starts with a quick summary of what it covers, and then a number of sections that go into technical requirements, deep dives for understanding the details, implementation overviews, a summary section, and finally a questions section for more in depth learning (N/A for 21).
Amazon Verified review Amazon
Tiny Nov 18, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Many programmers start their journey with C++ as a compiled code. “Decipher Object-Oriented Programming with C++” (Packt) by Dorothy Kirk helps to accelerate practices by providing a framework to move from basic C++ concepts to incorporating Object-Oriented (OO) architectures. Starting with C++ basic, the book moves to create inheritance and connections within the code to maximize reuse and minimize the original code required. This then advances to either using standard templates or making your own as well as some of the basic creation patterns used for OO programming. Each section includes well-commented code to precisely follow what each item is intended to do, and practice examples to further your knowledge. The first section, as with many coding books, revisits the syntax and unique areas needed for C++ coding. In addition the language, the section also details using indirect pointers, a key part of C++ in assigning memory allocation and removing those linkages when complete. The next section then moves into those OO areas in creating classes, adjusting inheritance between the classes, and some tips on creating multiple inheritance. Each of these functions is key to learning how to maximize C++ through using the features unique to this code language in building effective tools. Section three jumps into creating exceptions, implementing templates, and testing your code throughout. If you haven’t used C++, the constructs, using throw, catch, and try provides language tools where you can specify areas of code to break the loop and function in certain areas and report out unique errors. Understanding and building these constructions helps make sure the user interaction can’t break your well-designed code by not reading the segment instructions. Finally, the book addresses some common design processes for OO including observer, adapter, factory, and singleton. Each details the benefits and advantages for those patterns, shows how to build those templates, and describes both simple and advanced cases for those solutions. Finally the book includes an overall set of best practices to help make your C++ language more secure through using the skills developed in the previous 20 chapters. One complaint is that I felt the output of the coding sections was too far in the text from where the code was located. Again, not a problem with the knowledge contained but how I experienced that knowledge in moving through the book. It might be better in a print copy than an ecopy but I found the program outputs were usually several pages after where the actual code was located. Overall, this was an excellent walk through of how to move your C++ code into an object-oriented framework. I’d recommend for anyone currently using C++ or programming professionals helping to obtain a broader idea of how different languages function. I learned a lot, and enjoyed walking through the beautiful code samples, which was an unusual change for me.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.