개발 관련/객체 지향 2

객체지향 이란

최근 [객체지향의 사실과 오해] 도서를 읽고 나름대로 내용 정리를 하며 포스팅을 하려 합니다. https://book.naver.com/bookdb/book_detail.nhn?bid=9145968 객체지향의 사실과 오해 객체지향에 대한 선입견을 버려라!『객체지향의 사실과 오해』는 객체지향이란 무엇인가라는 원론적면서도 다소 위험한 질문에 답하기 위해 쓰여진 책이다. 안타깝게도 많은 사람들이 객체지 book.naver.com 1. 객체란? 역할, 책임, 협력의 관점으로 볼 수 있음 -> 예로 카페 서비스를 3개의 객체로 들 수 있습니다. 1) 손님 -> 주문 하기(역할/책임) 2) 캐시어 -> 주문 전달(역할/책임) 3) 바리스타 -> 커피 제조(역할/책임) 각 객체는 역할이 주어지며, 그에 대한 책임은 ..

객체 지향 설계의 5가지 원칙(SOLID)

좋은 객체 지향 설계에 대해 간략히 정리해봅니다. 사실 프로그래밍 할 때 이런 원칙을 고려하지 않고 개발하는 게 많았지만 나중에 소스는 지저분 해지고 기능 수정 시 여러 고려사항 또한 많았습니다. 이로인해 다시 한번 설계를 잘 해야겠다고 느낍니다. [OOP(Object Oriented Programming) 설계 5가지 원칙(SOLID)] 1. 단일 책임 원칙 - SRP(Single Responsibility Principle) - 한 클래스는 하나의 책임만 가져야 함 - 중요한 기준은 변경 영향도이다. (변경이 있을 때 파급 효과가 적으면 단일 책임 원칙을 잘 따른 것) - 여러 책임을 갖게 되면 그만큼의 관여도와 변경에 대한 요구가 있을 수 있고 해당 모듈(클래스) 수정이 빈번하게 일어날 수 있음 2..