디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

객체지향 기본기가 덜 되있으니 쉽게 설명해줌

ㅆㅇㅆ(124.216) 2025.09.07 18:50:15
조회 137 추천 1 댓글 2
														

우선 편의상 약간 잘못된 설명이 있음

부모 메서드에 오버라이딩을 할 수 있고, 사실 차라는 걸 규정하면 스포츠카, 트럭 이런식으로 바꾸지만 편의상 상속의 범위를

차의 모양새로 좁혀서 생각하자





2eec9e2cf5d518986abce8954785726fe7

이렇게 차가 있다 하자


이건 차의 구체적인 모양을 적당히 그린


차라는 걸 추상화한거


일단 이걸 차 틀이라고 하자.


자 여기에 이제 구체적인 구현을 하자



2eef9e2cf5d518986abce8954480746ab8


차에 창문을 달아주고, 바퀴 모양에서도 구체적으로 구현함


이걸 보통은 상속이라고 함.


상속은 이런형식으로 특정틀이 강제되있을때 세부구현이 편하다는 장점이 있지만


당연히 이 처음에 차 틀의 모양에서 바꾸기가 힘듬


is-a 관계라는것


이 차 틀이라는 것은 상속받는 것임. 즉 이 모양새는 바꿀 수가 없다 이거임(오버라이딩해서 부모 매서드를 재정의 할 수 있지만 이건 설명상 편의로 해둠)


이게 상속임. 즉 '차 틀'이라는 모양새내에서 세부적으로 구현할 수 있지만 대체로 차틀내에서 강제되는게 상속임


즉 처음에 정해진 틀 내에서만 바꿀 수 있기때문에  커스터마이징 하기가 상당히 어려움


그럼 컴포지션 즉 조합은 무엇인가





2eee9e2cf5d518986abce89547807768fb

요렇게 차틀이 있지만, 창틀이랑 모양새는 바뀔 수 있고 자동 차 바퀴도 여러개 있겠지?


일단 차 틀에 대해서 바퀴랑 창의 모양새를 좀 더 자유롭게 하고 싶어


has-a 관계는 무엇이냐


차 틀은 차지하고


자동차의 바퀴와 창은 모양이 계속 바껴야겠지? 차 프레임은 내버려두고





2ee99e2cf5d518986abce8954486776bcd

이런식으로 왼쪽 큰 바퀴와 오른쪽 작은 바퀴를 만들어두고 필요할때 끼워두는 형식으로 하는게 


컴포지션임



즉 상속은 정적인 분류 체계 -> 부모 틀을 기반으로 하는 강제적 구조, 하지만 차와 바퀴를 반드시 결합해야하는 강제적성이 있어서 강한 결합 되있다고 함


조합은 동적인 부품 조립 -> 부품을 끼워 맞추는 방식으로 유연하게 조합-> 차와 바퀴의 조합에 대해서 강제성이 덜해서 약한 결합 되있다고함


최근의 프로그래밍 기조는 동적 부품 조립으로 넘어가서 


컴포지션 쓰라고 하는거


컴포지션은 상속보다 유연하지만 관계가 약해지기때문에, 통일된 인터페이스가 강제되지 않으므로, 설계자가 규칙을 잡아야하기때문에


상속과 컴포지션 혼합하는게 프로그래머의 실력임






추천 비추천

1

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 며느리, 사위되면 시댁, 처가에 잘할 것 같은 스타 운영자 25/10/13 - -
AD iPad Pro 사전예약!! 운영자 25/10/17 - -
2888368 연봉 10억인데 남는게없다. 프갤러(121.139) 09.11 97 0
2888364 트럼프 최측근 죽었다는데 루도그담당(58.239) 09.11 96 0
2888361 충격적임.. ♥냥덩이♥갤로그로 이동합니다. 09.11 79 0
2888355 3개월 계약직후 정규직 전환이라는데 [4] 프갤러(58.29) 09.11 136 0
2888353 월600벌면서 남는게없다는새끼들 패고싶지않음??놀리는거맞지?? [3] 타이밍뒷통수한방(1.213) 09.11 116 0
2888352 [애니뉴스] 귀인환등초 22화 감상 프갤러(121.172) 09.11 71 0
2888351 거 씨발 러스트 쓰기 되게 힘드네 프갤러(211.234) 09.11 97 0
2888349 IT업계 최악의 도메인 == 의료/헬스케어 [12] ㅇㅇ(106.102) 09.11 193 1
2888347 태어나지 말았어야한다 프갤러(211.234) 09.11 74 0
2888345 외주하면 러스트 써도 되냐? [2] 프갤러(218.153) 09.11 127 0
2888344 원래 남이 짠 코드 보면 이해가 안되고 좀 좆같은게 있음. [1] 프갤러(218.153) 09.11 154 0
2888343 [대한민국] 찰리 커크 - 프갤러(121.172) 09.11 79 0
2888342 흠.. ♥냥덩이♥갤로그로 이동합니다. 09.11 109 0
2888340 외주색기들 코드보면 차라리 바이브코딩이 낫지 [2] ㅇㅇ갤로그로 이동합니다. 09.11 155 0
2888338 회사에서 일 개판쳐서 잘린사람 강의하고 다니네 [4] ㅇㅇ(121.190) 09.11 163 2
2888337 비전공자 늙은이 이직성공 했다 질문받음 [16] 프갤러(219.251) 09.11 296 0
2888335 23살 전자과 인생... 앞날이 막막하고 먹고살 길이 안보입니다... [1] 프갤러(49.165) 09.11 172 0
2888334 ■요즘 신입 대세포폴이 뭐임 [3] ㅇㅇ갤로그로 이동합니다. 09.11 219 0
2888333 riscv사고싶은데 마음에 드는것들이 없음 [2] 뒷통수한방(1.213) 09.11 99 0
2888332 주작기 한번 만들어봤는데 너무 비싸네 [3] 프갤러(125.139) 09.11 130 0
2888330 질문하나 드려요 [3] 7월갤로그로 이동합니다. 09.11 98 0
2888328 요즘 필드에서 nestjs 씀? [2] 뉴진파갤로그로 이동합니다. 09.11 130 0
2888327 리눅스 왜씀? [18] 프갤러(49.165) 09.11 203 8
2888325 토스 NEXT 면접 본 사람 있음?? 프갤러(112.220) 09.11 109 0
2888323 KDE OS 재밌는 시스템이네 [1] ㅇㅇ갤로그로 이동합니다. 09.11 113 0
2888322 요즘 아스카 외도 중 [2] 아스카영원히사랑해갤로그로 이동합니다. 09.11 125 0
2888318 점심->회사지원, 저녁->쌀,반찬 이렇게해도 식비거의없네 [4] 현무E공인(211.234) 09.11 126 0
2888315 자연인 승윤이 윤택이도 노인때묻어서 월천에 보너스도 몇백 버네 ㅋㅋㅋ 뒷통수한방(1.213) 09.11 59 0
2888314 1차민생지원금 10만좀 안되게 남았는디 [2] 현무E공인(211.234) 09.11 130 0
2888304 이 놈이 호랑이냐 고양이냐? ㅇㅅㅇ [2] 헤르 미온느갤로그로 이동합니다. 09.11 126 0
2888303 태연 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 09.11 73 0
2888302 하루 한 번 헤르미온느 찬양 헤르 미온느갤로그로 이동합니다. 09.11 96 0
2888297 코딩 문제 풀때 어떤 언어 추천하시나요? [10] ㅇㅇ(119.196) 09.11 203 0
2888296 케이팝 데몬헌터스가 뭐냐 ㅋㅋ 프갤러(121.139) 09.11 110 0
2888260 프로그래머(근로자)는 ㄹㅇ 노가다랑 다를거없는듯 공기역학갤로그로 이동합니다. 09.11 129 0
2888249 자프링 죽여버리고 싶었던 점 프갤러(110.8) 09.11 127 0
2888231 RAG 만들어보고 느끼는건데 나 LLM도 충분히 만들어볼 실력되는거 같다 [2] ㅆㅇㅆ(124.216) 09.11 173 0
2888230 도쿄뀨짱 ♥냥덩이♥갤로그로 이동합니다. 09.11 128 0
2888228 사이드프로젝트 시작함 [2] 뉴진파갤로그로 이동합니다. 09.11 135 0
2888226 올해도 끝나가는구나. 프갤러(49.165) 09.11 84 0
2888225 요즘들어 지구가 참 좁게 느껴짐 [1] ♥냥덩이♥갤로그로 이동합니다. 09.11 115 0
2888224 현 고3 대학관련 질문이있습니다 [3] 프갤러(39.119) 09.11 131 0
2888217 가을입니당❤+ ♥냥덩이♥갤로그로 이동합니다. 09.10 81 0
2888216 러스트 아조씨 난 건축시공같은거 했으면 엉망인거 괴로워서 살자했을듯 [1] 프갤러(175.197) 09.10 99 0
2888215 개새끼에게는 개새끼으 ㅣ답이 정답이라는거 보여줘요? 넥도리아(220.74) 09.10 76 0
2888214 국민의힘 십새끼들. 십새끼당, 차단한 사유 상납견? 넥도리아(220.74) 09.10 84 0
2888213 중국의 경제 56%는 3선 4선도시가 책임진다 프갤러(175.197) 09.10 89 0
2888211 솔직히 개발자중에 프로그래머라고 할만한인력은 극소수임 네오커헠(61.253) 09.10 131 0
2888205 애널의달성 1///4(2) ♥Sub2냥덩♥갤로그로 이동합니다. 09.10 80 0
2888204 ㄹㅇ 개피궁하넹 ♥Sub2냥덩♥갤로그로 이동합니다. 09.10 101 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2