
객체지향 프로그래밍의 주요 특징 4가지 캡슐화 상속 다형성 추상화 1. 캡슐화(Encapsulation) - 객체의 데이터(속성)와 메서드(데이터를 처리하는 행위)를 하나로 묶는다. - 실제 구현 내용 일부를 내부에 감추어 은닉한다. - 외부에서 알 필요가 없는 부분을 감춤으로써 대상을 단순화하는 추상화의 한 종류이다. 위의 사진처럼 데이터와 데이터를 처리하는 행위를 묶었다. 데이터를 처리하는 행위를 다른 클래스에서 하게 되면 어떻게 될까? 할인율을 0.9%에서 0.85%로 변경한다고 가정해보자. Product에 의존하고 있는 Store는 0.9 -> 0.85로 변경해야 한다. 예시에서는 하나의 Store 클래스이기 때문에 코드를 한 번만 바꾸면 되지만 많은 클래스들이 Product에 의존한다면, 바꿔야..

이번 포스트는 OOP에 대해 알아보고자 합니다. OOP : Object Oriented Programming : 객체지향 프로그래밍 객체지향 프로그래밍이란? 간단하게 말해서, 프로그램을 작은 조각들로 설계하여 결과물을 만들어내는 프로그래밍 방법론 객체지향 프로그래밍이 나오게 된 이유? 프로그래밍 기법은 순차적 프로그래밍 -> 절차적 프로그래밍 -> 객체지향 프로그래밍 순으로 발전했다. 순차적 프로그래밍의 단점을 보안 -> 절차적 프로그래밍 단점을 보안 -> 객체지향 프로그래밍으로 생각하면 되겠다. 많은 사람들이 오해하고 있는 것이 절차적 프로그래밍이 객체지향 프로그래밍의 반대라고 생각하는데 그것은 틀린 것이다. 1. 순차적 프로그래밍(Sequential Programming) 순차적 프로그래밍은 프로그래..