공부/객체 지향 프로그래밍 2

[OOP] SOLID 원칙

이전 포스팅에서 객체지향의 4대 특성에 대해서 공부해봤는데 이번에는 객체 지향 프로그래밍에서 유지보수성과 확장성을 높이기 위한 5가지 설계 원칙인 SOLID 원칙에 대해서 공부해보려고 한다.우선 위키에 정리되어있는 SOLID 원칙의 정의 부터 살펴보자!두문자약어개념SSRP단일 책임 원칙 (Single responsibility principle)한 클래스는 하나의 책임만 가져야 한다.OOCP개방-폐쇄 원칙 (Open/closed principle)소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다.LLSP리스코프 치환 원칙 (Liskov substitution principle)프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바꿀 수 있어야 한다.IISP인터페..

OOP(객체 지향 프로그래밍) 4대 특성

최근에 디자인 패턴에 대해서 공부를 하면서 SOLID 원칙, OOP의 4대 특성에 대해서 잘 모르고 있다는 생각이 들었다.그래서 디자인 패턴 공부를 잠시 멈추고 기본적인 공부부터 진행해보려고 한다. 우선 객체 지향 프로그래밍 ( object-oriented programming, OOP ) 는 무엇일까?검색창에 검색해보면 다음과 같은 정의를 찾아볼 수 있다.1. 객체 개념을 기반으로 하는 컴퓨터 프로그래밍의 패러다임.2. 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 '객체들의 모임'으로 파악하고자 하는 것3. 유연하고 변경이 쉬운 프로그램을 만들기 때문에 대규모 소프트웨어 개발에 많이 사용된다.한마디로 객체 지향 프로그래밍은 단순한 프로그래밍 스타일 중 하나 가 ..