Polymorphism Unique Deep Dive: Think Single vs Double Dispatch

Polymorphism

Polymorphism Basics Let’s start from polymorphism basics with an example. Let’s have a hierarchy of shapes that are defined with each of the derived types overloading a base virtual Draw() method.  Next, we used a console application to define a list of each of the shapes. And to iterate over each shape in the collection calling the Draw() method … Read more

Unlock OOP: Polymorphism Techniques You Need to Master!

Polymorphism

Polymorphism describes the concept that objects of different types can be accessed through the same interface. Each type can provide its own, independent implementation of this interface. So; is polymorphism just “being able to perform functions of an interface, such as adding, subtracting, etc, on objects of different data types such as integers, floats, etc”? … Read more

Document Object Model: What You Need to Know

html dom

What Is DOM (Document Object Model)? The Document Object Model (DOM) is an essential part of modern web development, allowing for the manipulation and interpretation of web documents. It is a standard defined by the World Wide Web Consortium (W3C) and provides a platform- and language-neutral interface for accessing and manipulating documents. It defines a … Read more

Do you REALLY know what SOLID means? (#5: Exclusive Truth about Dependency Inversion Principle)

dependency inversion principle

Dependency Inversion Principle states that entities must depend on abstractions, not on concretions. It asserts that the high-level module must not depend on the low-level module; but they should depend on abstractions. It is one of the fundamental pillars of SOLID principles. But why the term inversion?traditionally, software structures had higher level modules depending on … Read more

Do you REALLY know what SOLID means? (#4: Exclusive Truth about Interface Segregation Principle)

interface segragation principle

Interface Segregation The philosophy of Interface Segregation principle is – larger interfaces should be split into smaller ones. By doing so, we can ensure that implementing classes only need to be concerned about the methods that are of interest to them. The principle states that many client-specific interfaces are better than one general-purpose interface. Clients … Read more