Platform dependencies

When programming in languages such as C/C++, one needs to be aware of which libraries the program is dependent on. Usually, these libraries are available with different names on the standard package managers on different operating system platforms such as Fedora Linux, Debian Linux, macOS etc. Occasionally, these libraries may not even be available on certain platforms. So, the only option may be to try one’s luck in compiling and installing the source code.

On the other hand, newer languages such as python and java try to be as platform-agnostic as possible. So, in theory, programs written in these languages should be able to run on any platform. This is true for the most part. Where it isn’t true is where they are not written in pure python or java and combine some C/C++.

C++ and it’s uniqueness

Among the different computer languages, C++ is one of the languages which can cater to a lot of needs. The usage apparently depends on the individual using it.

It can easily function as a low-level C style language with no automatic memory management. On the other hand, one can make use of smart pointers if one needs some level of memory management. Also, one can make use of all the standard libraries of C++ and use an object oriented approach. One can even go for functional programming if that is what is desired.

Python’s extensibility

Python is a versatile language with numerous great features. It is designed to be easy to read and understand. Python can be learned fairly easily and one can start programming in it quickly.

There is also a way to integrate libraries written in C/C++ using extensions. This allows python developers to make use of the numerous robust C/C++ libraries which have been created over the years inside python scripts.