OOP

객체지향 프로그래밍

클래스에서 정의한 것을 토대로 메모리에 할당된 객체를 기본 단위로 이들간의 상호작용을 통해 프로그램을 개발하는 것.

객체지향 프로그래밍의 특징

  1. 캡슐화 : 변수와 함수를 클래스로 번들링해 높은 응집도와 낮은 결합도를 유지하고, 외부에서 객체 내부의 정보를 은닉함.
  2. 상속 : 자식 클래스가 부모의 클래스의 특성과 기능을 그대로 물려받아 코드의 재사용성을 용이하게함.
  3. 다형성 : 하나의 변수 또는 함수가 상황에 따라 다른 역할을 수행하는 것.

객체지향 프로그래밍의 장점

  1. 우수한 재사용성과 그로인한 생산성 증가
  2. 유지보수 용이

객체지향 프로그래밍의 단점

  1. 절차지향에 비해 상대적으로 느린 속도
  2. 설계의 어려움