[Design Pattern] OOP

younghyun·2022년 9월 27일
0

Design Pattern

목록 보기
1/14
post-thumbnail

좋은 SW란 무엇인가에 대한 고찰

SW가 대형화되면서 요구사항이 계속 늘어나고, 이에 설계의 중요성이 대두되었다. 잘못된 설계로 개발 비용이 기하급수적으로 늘 수 있다는 것을 인지해야 한다.
좋은 SW란 유지보수가 쉽고, 재사용을 하기 쉽게 하고, 읽기 좋게 만든것을 말한다.
SW 비용을 줄이기 위해 객체 지향으로의 패러다임 변화가 일어났다.

OOP란

OOP는 Object Oriented Programming의 약자로 객체 지향 프로그래밍을 뜻한다. 절차적 프로그래밍의 문제점을 개선한 프로그래밍 방법이다.

OOP의 특징 4가지

추상화(abstraction)

추상화는 여러 객체에서 공통되는 특성을 추출하는 작업이다.

캡슐화(encapsulation)

캡슐화는 내부 로직들을 클래스 내에 담아서 감추고 사용자가 사용할 수 있는 부분만 인터페이스에 담아서 공개함으로써 내부로직을 보호한다.

객체의 상태를 가져오지 않고 메세지를 던지자. 메세지를 받은 객체가 자신의 상태를 이용해서 자율적으로 행동하도록 하자.

상속(inheritance)

상속은 자식 클래스에서 부모 클래스로부터 부모의 모든 자원을 물려 받는 것을 의미한다.

다형성(polymorphism)

다형성은 하나의 객체가 여러 가지 타입을 가질 수 있는것을 의미한다.

profile
🌱 주니어 백엔드 개발자입니당

0개의 댓글