Skip to content

Latest commit

 

History

History
44 lines (35 loc) · 1.59 KB

810c5d55.md

File metadata and controls

44 lines (35 loc) · 1.59 KB
slug title tags date
object-oriented-programming
Object Oriented Programming
zettel
object-oriented-programming
computer-science
programming
oop
computer-science/programming
computer-science/programming/oop
head-first-design-pattern
book
book/head-first-design-pattern
elisabeth-freeman
kathy-sierra
elisabeth-freeman-and-kathy-sierra
2021-07-26T23:25

wide

Object Oriented Programming is a programming design paradigm in which code architectures are based on the concept of "objects". It give codes a structure, encapsulated into classes and treated as an independent, inheritable, and extendable entity, similar to how we humans structure our everyday life.

OO design principles relies on its four pillars: Encapsulation, Abstraction, Polymorphism, and Inheritance.1

For instance, a code implementation for storing different classifications of musical instruments. A family of String instruments are encapsulated by StringInstrument class where Guitar, Violin, or Cello classes inherits from. Similarly, PercussionInstrument class parents the subclasses Drums, Marimba, or Tambourine.

2

Resources

Footnotes

  1. https://www.google.com/amp/s/info.keylimeinteractive.com/the-four-pillars-of-object-oriented-programming (The Four Pillars of Object Oriented Programminging)

  2. Head First Design Pattern by Elisabeth Freeman and Kathy Sierra