본문 바로가기

Solid2

[OOP] 객체지향 설계 5원칙 SOLID (SRP, OCP) SOLID를 공부하는 이유 다른 개발자들은 몇 년의 경험이 쌓여야 잘 이뤄진 객체지향 설계에 대한 필요성을 느낀다 한다. 대부분의 개발자가 그렇게 말하는 것을 보았고 그 말은, 개발자 인생에서 반드시 익혀두어야 하는 개념임은 확실하다 생각했다. 그래서인지 공부를 해 보며 알 수 없는 부분들이 많았다. 굉장히 철학적이고 추상적으로 느껴졌다. 하지만 내용을 알면서 경험하는 것과 그렇지 않은 것은 큰 차이가 있다고 생각하기에 아직 걸음조차 떼지 못한 주니어 개발자이지만 앞으로의 경험을 대비해 지금이 SOLID를 공부하기에 효율적인 시기가 아닐까란 생각이 들었다. SOLID의 탄생 배경 컴퓨터의 연산은 자료구조를 담당하는 memory와 연산을 담당하는 cpu의 합작이다. 초기 이 memory와 cpu의 성능이 .. 2022. 8. 13.
SOLID SOLID란? 클린코드로 유명한 로버트 마틴이 좋은 객체 지향 설계의 5가지 원칙을 정리한 것. SOLID의 5가지 내용 SRP : 단일 책임 원칙 OCP : 개방-폐쇄 원칙 LSP : 리스코프 치환 원칙 ISP : 인터페이스 분리 원칙 DIP : 의존관계 역전 원칙 하나하나 뜯어 보자! SRP (single responsibility principle) 한 클래스는 하나의 책임만을 가져야 한다. 쉽게 말해 변화가 있을 때 최대한 적은 수정을 할 수 있어야 한다. OCP (Open/Closed principle) 소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다. 다형성을 최대한 활용해야 함. LSP (Liskov substitution principle) 프로그램의 속성을 변경하지 않고.. 2022. 3. 18.