Tutorial Review #1: Programación orientada a objetos con C++

In this blog post, I am going to review Programación Orientada a Objetos con C++. 4ª Edición. This marks the beginning of the Tutorial Review series on my website. A previous entry to this series actually exists which contains the serie’s guidelines. So, if this is your first time reading a blog post of this series. I suggest you to take some time to read the guidelines.

Introduction

Programación Orientada a Objetos con C++. 4ª Edición is a Spanish programming book. I decided to read this book because a new library opened near where I live and I visited it. While I was searching for different programming books about C++, this was the only one that hey had. Specifically, this is not a programming book that focuses on C++ only. In reality, what this books is really about, is object-oriented programming applied to the C++ programming language.

Object-oriented programming (OOP) is a programming paradigm in computer science that relies on the concept of classes and objects. It is used to structure a software program into simple, reusable pieces of code blueprints called classes. Then, those classes are used to create individual instances of objects which hold the actual data. There are many programming languages that support object-oriented programming with C++ being one of them.

Object-oriented programming

C++ is a general-purpose programming language created by Bjarne Stroustrup in 1979 as an enhancement of the C language. Moreover, C++ is one of the most powerful and toughest programming languages to learn and use. It is an excellent choice for building software that is fast, efficient and reliable in performing critical tasks.

C++

Technical datasheet

This is the technical datasheet for Programación Orientada a Objetos con C++. 4ª Edición. It includes all basic information and also any other extra information which I have demeed relevant for this tutorial review.

Programación orientada a objetos con C++

Key points

It is time to enter the main part of any tutorial review. A detailed and justified explanation of each individual key point to review.

Up-to-date

1.5/5

If you read the technical datasheet, you probably saw that this book released in 2007 which was a while ago. For a book about programming which is one of the foundation pillars of technology. A 15-year gap is too big because nowadays a 5-year gap in the technology sector is already immense.

Since the release of this book in 2007, 4 newer standards of C++ have been published. Soon, by the end of 2023, this number is going to become 5. Every 3 years, a new C++ standard is reviewed and published. Those revisions are extremely important because they dictate what features get added, modified or removed from the language.

All the content that the book provides is based on previous outdated C++ standards. This means that obviously new features introduced in later standards are not present. While the opposite also applies, where features present in previous C++ standards get removed in newer standards.

Around 20% of the book’s content is about removed features. For example, the last chapter of the book, chapter 9, is about threads. However, back in 2007, C++ did not have official support for threads. So, the book’s author wrote about one of the most popular third-party thread libraries back then, POSIX. Official thread support was not added to C++ until 2011. Things like these happen every now and then throughout the book but on a smaller scale.

Fortunately, the remaining 80% of the book’s content is still relevant. The majority of the content is about object-oriented programming. C++ has had some important improvements regarding object-oriented programming over the span of each C++ standard. Nonetheless, the foundation has never been majorirly impacted so most information of the topic is surprisingly up-to-date.

Quality

3/5
As mentioned previously in the review’s introduction, this tutorial’s goal is to teach about object-oriented programming in C++. Overall, it covers most basic and advanced object-oriented programming use cases. The book is structured in 9 chapters which can be seen in its cover:
  1. Object-oriented programming
  2. C++
  3. Classes
  4. Overloaded operators
  5. Derived classes
  6. Templates
  7. Exceptions
  8. Flows
  9. Threads

The first two chapters act as an introduction about how object-oriented programming and C++ work. Chapter 3 to chapter 6 focus on object-oriented programming concepts and implementations. Chapter 8 falls in a weird spot as it is not strictly related to object-oriented programming but contains useful knowledge. Unfortunately, the last chapter is completely pointless and I cannot understand why it was included. Nonetheless, bonus content is always welcomed.

For the most part, the book offers great explanations and rarely you may find yourself not understanding something. The book even includes appendices with instructions on how to install C++ and the needed software to your machine. All the information that you need to enjoy the book to the fullest is already within the book (and CD-ROM). You will not need to research on the Internet about anything while reading this book. Additionally, keep in mind that the book has both solved and unsolved exercises for the user to try.

My main complaint about this programming book is that technicisms are written in Spanish without providing translations to English. Usually, trying to translate a technicism with a direct translation does not work and I can attest to that. Therefore, having technicisms at least in English is beneficial to the readers. Furthermore, this books uses technicisms quite often so it is really very inconvenient and frustrating not to have the English translations available.

Price

0.5/5

Considering all the different things that I have said from this book so far. Its price is awful, both the physical and digital version. Thankfully, and as it should, the digital version is considerably cheaper. There is a cost difference of around 12€ which is about one third of the physical version price. It looks like the book may be keeping its original release price tag. Funnily enough, if we use the Wayback Machine. We can prove that this theory may actually be true because the price has not changed at least since 2020.

If I were to buy Programación Orientada a Objetos con C++. 4ª Edición in 2007. A price of 35,90€ for a physical copy and 23,99€ for a digital copy is reasonable. However, as I have stated in the guidelines. I am to judge and review solely based on the current status of the product. In my case, I obtained this book for free as I borrowed it from a public library but that is beside the point.

Scoring

Finally, to close out the first actual review of the Tutorial Review series. Here we have the scores for Programación orientada a objetos con C++. 4ª Edición.

Up-to-date

1.5/5

1.5 (Poor)

Programming is a constantly evolving field that quickly becomes obsolete and this book is 15 years old.

Quality

2.5/5

3.0 (Decent)

Questionable book structure but contains all the information that you are going to need in one place.

Price

0.5/5

0.5 (Awful)

Very high price for an old product. The current listed price seems to be the same as the original price tag.

Final score

2/5

2.0 (Mediocre)

Outdated programming book which is not worth your time. You should read a newer programming book instead.

C makes it easy to shoot yourself in the foot. C++ makes it harder, but when you do it, it blows your whole leg off.
Bjarne Stroustrup - C++ creator
Bjarne Stroustrup
C++ creator
Share this