Introduction – Programming Languages
Programming languages are basically instructions to the computer to perform certain functions. These functions could in turn be mathematical functions like addition , subtraction or logic function like “And” , “Or”, “Nor” etc. Initially programming languages evolved as a series of instructions to be executed one following the other. These are procedural languages like “C”. People then realised that there are repeatedly usable constructions called functions which can work on certain programming objects. These became “Object Oriented Languages” such as C++. Moore’s law has seen to it that the power of the computing chip has grown rapidly over the years, with the result that higher level languages which are interpretted and dont directly interact with the hardware or cpu directly have come about. These higher level languages relieve the programmer of the intrinsic interactions with the hardware such as the usage of registers and memory management. Thus the programmer’s productivity is used towards creating robust functionality as opposed to efficiency. Basically programming languages can be classified into 3 types namely
- Procedural Languages such as “C”
- Object Oriented Languages and “C++”, Java etc
Objected Oriented Programming
So what is the primary difference between C and C++? C++ is a superset of the C programming language mainly with the addition of “Object Oriented” programming abilities allowing the modularization and reuse of code.Almost all languages that have come into use since the 1990s have Object Oriented programming features. In the paradigm of Object Oriented Programming, software is organized into a classes which are made up of data and behaviour. In programming language classes consist of “states” and “methods”. an object in this context is a specific instance of a class. As this is nto a course in C++ we will leave it here. Suffice to say that Object Oriented programming enables the programmer to think in terms of classes and methods and thus reuse the code by using the objects whenever and wherever it is required in the application.
Python and C++
Python is an interpreted, high-level, general-purpose programming language while C is a general-purpose, procedural computer programming language. One could say that C and C++ as compilable languages are closer to the hardware and due to the lack od an intermediate interpretting layer will be fatsre at execution time.
The Python language has a very simplified syntax swhich is not complicated. With a significant emphasis on natural language, it is one of the most accessible programming languages available. Due to its ease of learning and usage, python codes can be easily written and executed much faster than other programming languages. An exhaustive and versatile library and a supportive community well supported by software giants have ensured the growth and popularity of Python in recent years.
C++ as an extension of C is a highly developed programming language in terms of operators, simplicity, and ease of notation. This allows for data abstraction and the use of several programming paradigms: procedural, object-oriented and generic. Innately it is a high performance language sitting closer to the hardware. The language libraries have direct access to hardware resources and system functions and is unmatched when it comes to ease of creation and use of libraries at the operating system level.
As of 2021, Python has become one of the world’s most popular programming languages and is steadily increased in popularity. As an advanced, interpreted programming language with an easy-to-use syntax and robust libraries it stands out among other web development languages.
Several popular Python frameworks are used for application development. There are many frameworks for developing code using Python. A few very popular frameworks are listed below
In summary both Python and C++ have there own sphere of use. Python provides an easy introduction to programming by hiding the complexities. Python in that sense democratises programming and anyone with aptitude to try out programming can be productive in a short time. The learning curve is slightly steeper with C++ but the expertised gained will make it even easier to master easier programming languages such as Python. In today’s world data scientists come from various domains and have specialised in fields ranging from medicine to finance. Python enables people from non computing domains to get a foothold into data science being an easy to learn language. With the numerous frameworks developing functional modules become a breeze.