Guru: Procedure Driven RPG And Adopting The Pillars Of Object-Oriented Programming
February 19, 2024 Gregory Simmons
The four pillars of object-oriented programming (OOP): abstraction, encapsulation, inheritance, and polymorphism, were not created at a single point in time. They evolved gradually over several years, with contributions from various researchers and programmers. Here’s a brief overview of their evolution:
-
Abstraction:
- Alan Kay is credited with introducing the concept of abstraction in the 1960s with his work on Simula.
- Abstraction gained further traction with the development of Smalltalk in the 1970s.
-
Encapsulation:
- David Parnas, in his 1972 paper “On the Criteria To Be Used in Decomposing Systems into Modules,” laid the groundwork for encapsulation by emphasizing the importance of