견고한 객체 지향 프로그래밍단일 책임 원칙단일 책임 원칙 적용 I

Q

self.관련

조회 241

좋아요 1

2020년 11월 9일




A
1개의 답변이 있어요



2020년 11월 9일

댓글 2

2020년 11월 9일
아.. 그럼, Ship에서 관리되고 있고 아니고의 코드 결과상 어떤 차이가 있을까요?
2020년 11월 10일
코드 결과라면 출력을 말씀하신건가요? 출력에서는 아무런 영향이 없을 수도 있습니다. God Object를 분리한다고 해서 출력은 상관없을 수도 있어요. 코드 상에서 책임들을 분배할 뿐입니다.

위에서 올려주신 코드는 이미 Ship의 역할들을 분배된 상태로 FuelTank, CrewManager, SupplyHoid, Engine으로 나뉘어져 있지만 Ship에서 앞서 말한 4가지 모든 역할을 가지고 있게 된다면, 한가지의 예시로 FuelTank의 인스턴스 메소드와 인스턴스 변수들을 모두 Ship의 인스턴스 메소드와 인스턴스 변수가 되는겁니다.

결과적으로 코드 상으로는 메소드와 변수의 위치가 바뀌게 됩니다.

(주) 코드잇

대표강영훈

개인정보보호책임자강영훈

이메일support@codeit.kr

사업자 번호313-86-00797

통신판매업제 2019-서울중구-1034 호

주소서울특별시 중구 청계천로 100 시그니쳐타워 동관 10층 코드잇