Post #136: WhyTap, What is Python?, 2024.
WHY tap
Post #87: FreeCodeCamp, Beau Carnes, Ultimate Beginner's Python Course on YouTube by Dave Gray, 2023.
Post #18: SoloLearn, Android-App for learning programming and script languages, 2023.
I have been learning programming with SoloLearn every day for 1 year or 365 days now: Python, C#, HTML, CSS and JavaScript. For me, SoloLearn is one of the best providers for learning coding on the go using a tablet or smartphone.
Post #117: SoloLearn, My 365 Days Streak, 2024.
Post #58: YouTube, ARTE, MatheWelten, Rätselhafte Fünfecke, 2023.
Post #84: YouTube, TimeLine Deutschland, Gottfried Leibniz: Das größte Genie aller Zeiten, 2023.
Post #90: The pillars of object-oriented programming: Object, Class, Inheritance, Polymorphism, Abstraction and Encapsulation, 2023.
Object-oriented programming is a fundamental concept present in numerous programming languages such as C++, Java, JavaScript, and more. It becomes straightforward once you truly grasp it, and that's precisely what this post aims to help you achieve. So, stop your scrolling for a second and delve into this post for a thorough and clear explanation.
To grasp OOP, let's begin by explaining the name itself: "Object-Oriented." This term signifies that OOP revolves around entities known as "objects."
An object in OOP is any entity that possesses both state and behavior. Consider a dog as an example: it has states such as color, name, and breed, while its behaviors encompass actions like wagging the tail, barking, and eating.
The reason we introduce the concept of objects in programming is to effectively represent real-world entities, a task that cannot be accomplished with conventional variables or arrays.
Now, what about classes? A class is essentially the abstract form of an object. If we take the example of a "dog," the object "Mydog" is a concrete instance, while the class "dog" represents dogs in a more general sense. Think of a class as a blueprint or template from which you can create individual objects.
Now that we've established the fundamentals of objects and classes. OOP is built upon four key principles:
Inheritance: Inheritance occurs when one object inherits all the properties and behaviors of a parent object. It promotes code reusability and facilitates runtime polymorphism.
Polymorphism: Polymorphism entails performing a single task in multiple ways. For instance, it can involve presenting information differently to customers or implementing different shapes like triangles or rectangles.
Abstraction: Abstraction is about concealing internal details while exposing functionality. Consider a phone call; we don't need to understand the intricate inner workings.
Encapsulation: Encapsulation involves bundling code and data into a single unit. Just like a capsule contains various medicines . In a fully encapsulated class (e.g., a Java bean), all data members are private, ensuring data integrity and controlled access.
I remember finding these images that explained these concepts using the 'Squid Game' series, and they are just perfect. So, I'm sharing them here and giving all credit to their owner :
Polymorphism , Inheritance , Encapsulation
Python ist eine sehr einfach zu erlernende Programmiersprache und für den Einstieg in die Welt der Programmierung ideal geeignet. Trotz ihrer Einfachheit bietet diese Sprache auch die Möglichkeit, komplexe Programme für vielfältige Anwendungsgebiete zu schreiben. (MITP-Verlag)
Post #142: Thomas Theis, Einstieg in Python, Ideal für Programmieren Steiger, Rheinwerk Computing Verlag, Bonn, 8. aktualisierte Ausgabe, 2024.
This small article from "Analytics Insight" briefly introduces five programming languages that are supposedly suitable for beginners to learn to program: Python, C and C++, Java, Kotlin and JavaScript. I do not share this opinion with the author Shiva Ganesh. For me, of the programming languages mentioned above, "Python" is by far the best for beginners, followed by JavaScript. I would never recommend "Java" to a beginner as the syntax is quite complicated and not at all intuitive to understand, which is very much the case with e.g. Python. I wouldn't recommend C, C++ and Kotlin for newcomers either, because these languages are too complex to start with.
In diesem kleinen Artikel von "Analytics Insight" werden fünf Programmiersprachen kurz vorgestellt, die angeblich für Einsteiger geeignet sein sollen, um das Programmieren zu lernen: Python, C und C++, Java, Kotlin und JavaScript. Diese Meinung teile ich nicht mit dem Autor Shiva Ganesh. Für mich ist von den oben genannten Programmiersprachen "Python" mit Abstand am besten für Anfänger geeignet, direkt dahinter kommt die JavaScript. Einem Anfänger würde ich niemals "Java" empfehlen, da die Syntax ziemlich kompliziert und überhaupt nicht intuitiv verständlich ist, was z.B. bei Python sehr stark der Fall ist. C, C++ und Kotlin würde ich Neulingen auch nicht anraten, weil diese Sprachen für den Anfang zu komplex sind.
Post #48: Analytics Insight, 5 Programming Languages For Beginners To Learn, 2023.
Post #108: W3Schools, Built-in data types in Python, 2023.