객체 지향 프로그래밍
OOP(Object-Oriented Programming)란 프로그램 설계방법론이자 개념의 일종이다.
프로그램을 단순히 데이터와 처리 방법으로 나누는 것이 아니라,
프로그램을 수많은 '객체(object)'라는 기본 단위로 나누고 이들의 상호작용으로 서술하는 방식이다.
객체
객체는 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며
하나의 역할을 수행하는 '메소드와 변수(데이터)'의 묶음이라고 할 수 있다.
레고에 빗대 표현하자면 객체는 레고의 조각이고 레고를 조립해서 무언가를 만들어 내는 것이 객체 지향 프로그래밍이라고 할 수 있다.
객체 지향 프로그래밍의 특징
객체 지향 프로그래밍은 크게 추상화, 캡슐화 ,상속 ,다형성 의 네가지 특징을 가진다.
SOLID (객체 지향 설계 원칙)
객체 지향적으로 설계하기 위해 SOLID 라 불리는 다섯 가지 원칙이 있다.
1. 단일 책임 원칙 (SRP, Single Responsibility Principle)
2. 개방-폐쇄 원칙 (OCP, Open/Closed Principle)
3. 리스코프 치환 원칙 (LSP, Liskov Substitution Principle)
4. 인터페이스 분리 원칙 (ISP, Interface Segregation Principle)
5. 의존관계 역전 원칙 (DIP), Dependency Inversion Principle)
'CS' 카테고리의 다른 글
클라이언트와 서버 (0) | 2023.04.03 |
---|---|
MSA(Microservice Architecture)란? (0) | 2023.03.29 |
의존성 주입(Dependency Injection) 이란? (0) | 2023.03.28 |
OOP 3: SOLID 객체 지향 설계 5원칙 (0) | 2023.03.28 |
OOP 2: 객체 지향 프로그래밍의 특징 (0) | 2023.03.27 |