객체지향 프로그래밍(POO)의 4대 원리
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
초보 프로그래머 및 OOP 개념을 배우고자 하는 사람들
난이도: 기초 수준
핵심 요약
- 객체지향 프로그래밍(POO)의 4대 원리는 캡슐화, 추상화, 상속, 다형성이다.
- 캡슐화는 데이터와 메서드를 객체 내부에 숨기고, 필요시 인터페이스를 통해 접근하게 하는 설계 원칙이다.
- 상속은 부모 클래스의 코드를 자식 클래스가 재사용하여 중복을 줄이고 코드를 정리하는 방법이다.
- 다형성은 동일한 메서드가 다른 객체에서 다른 방식으로 동작하도록 하는 기능이다.
섹션별 세부 요약
1. 프로그래밍 패러다임의 개념
- 패러다임은 문제를 해결하는 일반적인 모델로, 프로그래밍 언어는 특정 패러다임을 따르는 방식으로 설계된다.
- 절차형 프로그래밍은 함수와 변수를 중심으로 프로그램을 구성하는 방식이며, 실행 순서에 초점을 맞춘다.
2. 캡슐화
- 객체 내부의 데이터와 메서드를 외부로부터 보호하고, 필요시 인터페이스를 통해만 접근하게 하는 설계 원칙이다.
- 예: 객체 내부의 복잡한 로직은 숨기고, 사용자가 필요한 정보만 제공한다.
3. 추상화
- 복잡한 내부 구현을 숨기고, 사용자가 필요한 핵심 기능만을 제공하는 설계 원칙이다.
- 예: 자동차를 운전할 때 엔진의 작동 방식을 알 필요 없이, 핵심 기능(주행, 정지)만 사용한다.
4. 상속
- 부모 클래스의 속성과 메서드를 자식 클래스가 재사용하여 중복을 줄이고, 코드를 효율적으로 구성하는 방식이다.
- 예: "차량" 클래스가 "승용차" 및 "트럭" 클래스에 속성을 공유하게 한다.
5. 다형성
- 동일한 메서드 이름으로, 다른 객체에서 다른 동작을 수행하도록 하는 기능이다.
- 예:
fazerSom()
메서드는 "강아지" 객체에서는 짖고, "고양이" 객체에서는 울음소리를 내는 방식으로 동작한다.
결론
- 객체지향 프로그래밍의 4대 원리는 코드의 재사용성, 유지보수성, 확장성을 높이는 데 핵심적이다.
- 실무에서는 각 원리를 적용하여 복잡한 시스템을 효율적으로 설계하고, 협업을 용이하게 만드는 것이 중요하다.