자격증(정보처리기사)공부를 하거나, 학부때 그냥 외우기만📚 했었던, OOP(객체지향프로그래밍)을 위한 5가지 설계원칙에 대해 알아보고자 합니다! "A = B 다" 같은 느낌 보다는, 왜 A가 B가 되는건지에 대한 이해를 목표로 잡았어요⚾️ Object-Oriented Programming 객체 지향 프로그래밍에 대해 정말 많고 다양한 해석들이 있어요. (class와 instance를 붕어빵틀과 붕어빵에 비유하는 등) 저는 이것들에 대해 각각 실제의 사물과 대칭시켜 예시를 들지않고, black box😎느낌으로 정리해 보겠습니다..! 캡슐화 하나의 프로그램을 실행시키면 그안에 무수히 많은 데이터가 있고, 그 무수히 많은 데이터를 연산하는 메서드가 있습니다. 이 많은 친구들을 한 공간에 넣어두면 이후, 유지보..
자격증(정보처리기사)공부를 하거나, 학부때 그냥 외우기만📚 했었던, OOP(객체지향프로그래밍)을 위한 5가지 설계원칙에 대해 알아보고자 합니다! "A = B 다" 같은 느낌 보다는, 왜 A가 B가 되는건지에 대한 이해를 목표로 잡았어요⚾️ 일단 쭉 읽어보고 넘어갑시다 🏇🏼 단일 책임 원칙 (SRP: Single-Responsibility Principle) 소프트웨어 요소(클래스, 모듈, 함수 등)는 되도록 응집도(?)있는 단 하나의 책임(?)을 가져야 합니다. 클래스의 변경이 일어나는 경우는 오직 응집도(?)때문이어야 합니다. 개방-폐쇄 원칙 (OCP: Open-Close Principle) 소프트웨어 요소는 확장이 가능하도록 열려있고(?), 변경은 되지않도록 닫혀있어(?)야 합니다. 새 기능을 추가해..