디시인사이드 갤러리

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

갤러리 본문 영역

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

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

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

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

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





2eec9e2cf5d518986abce8954785726fe7

이렇게 차가 있다 하자


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


차라는 걸 추상화한거


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


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



2eef9e2cf5d518986abce8954480746ab8


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


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


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


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


is-a 관계라는것


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


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


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


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





2eee9e2cf5d518986abce89547807768fb

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


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


has-a 관계는 무엇이냐


차 틀은 차지하고


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





2ee99e2cf5d518986abce8954486776bcd

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


컴포지션임



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


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


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


컴포지션 쓰라고 하는거


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


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






추천 비추천

1

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 며느리, 사위되면 시댁, 처가에 잘할 것 같은 스타 운영자 25/10/13 - -
AD 프로게이머가 될테야!! 운영자 25/10/01 - -
2889346 첨으로 한 주에 면접 2개 잡힘 [1] 무관갤로그로 이동합니다. 09.15 131 0
2889345 공유기 밑에 나중에 나스 놀거 생각해서 이렇게 놓았는데... 넥도리아(220.74) 09.15 124 0
2889342 보통 통신사 공유기 어디다 놓아요? 넥도리아(220.74) 09.15 108 0
2889341 랜선 내방망 구축중입니다. [4] 넥도리아(119.195) 09.15 128 0
2889340 저녁 [1] 발명도둑잡기(118.216) 09.15 63 0
2889338 AI 글 수정하는거 보고가 ㅋㅋ 나르시갤로그로 이동합니다. 09.15 97 0
2889337 제미니 유무료로 글 써보니까 느낀 점 나르시갤로그로 이동합니다. 09.15 93 0
2889335 ㅆㅇㅆ 범죄 증거 목록.txt [24] 나르시갤로그로 이동합니다. 09.15 217 4
2889334 ㅆㅇㅆ 분명히 경고했다. 범죄 한번 더 저지르면 고소한다고 했다. 나르시갤로그로 이동합니다. 09.15 97 3
2889333 ㅆㅇㅆ 비방 목적 허위 사실 유포 한번만 더하면 고소한다. 나르시갤로그로 이동합니다. 09.15 114 4
2889331 AI 사용 제한까지 오늘 함 다 써보자 ㅋㅋ 나르시갤로그로 이동합니다. 09.15 88 0
2889330 이 자슥 완벽히 차단하는 방법 없는가? 나르시갤로그로 이동합니다. 09.15 85 0
2889329 개쩌는 게임 아이디어가 떠올랐는데 과연 내가 할 수 있을까 프갤러(218.154) 09.15 84 0
2889328 ㅆㅇㅆ 얘는 지가 불특정 다수한테 까이는 걸 굳이 왜곡 나르시갤로그로 이동합니다. 09.15 101 8
2889327 발톱이거 깨진거 n개월 째인데 [1] 루도그담당(211.184) 09.15 91 0
2889326 내 관심 받으려 하지 말고 니들 일이나 해. 나르시갤로그로 이동합니다. 09.15 63 3
2889325 ㅆㅇㅆ은 의문의 다중이? 망상으로 타인을 공격해. 나르시갤로그로 이동합니다. 09.15 74 3
2889323 러빨러 또 납션냐? 너도 정신 차리고 살아 나르시갤로그로 이동합니다. 09.15 64 0
2889322 ㅆㅇㅆ 또 망상, 현실 왜곡하니? 나이도 한참 어리구만. ㅎㅎ 나르시갤로그로 이동합니다. 09.15 91 3
2889321 우울증 << 이거 뭐하면 오는거임? [3] 루도그담당(211.184) 09.15 116 0
2889320 발톱 깨졌는데 이거 병원가서 [10] 루도그담당(211.184) 09.15 98 0
2889319 루비만 까면 나타나는 의문의 다중 유동이들ㅋㅋㅋ [4] ㅆㅇㅆ(124.216) 09.15 102 0
2889318 그 보석 나이 50먹고 러스트보다 에이다가 낫다고 물고빨았던거냐 [1] 프갤러(218.154) 09.15 97 0
2889317 리액트 개발모드에서 mount unmount mount 한대 [7] 헬마스터갤로그로 이동합니다. 09.15 102 0
2889316 고릴란가 원숭인가 영장류중에 [3] 주아갤로그로 이동합니다. 09.15 89 0
2889315 jdw64친추해도되나 프갤러(223.38) 09.15 73 0
2889314 c언어에서 int foo();하면 가변인자받는거임? [4] 프갤러(223.38) 09.15 103 0
2889312 stdin stdout stderr 대체머임? [9] 프갤러(223.38) 09.15 111 0
2889311 프갤도 완장이 있어야 함 [3] 루도그담당(211.184) 09.15 103 0
2889310 AI 저술 과정을 함 보자. [4] 나르시갤로그로 이동합니다. 09.15 105 0
2889309 ㅆㅇㅆ 나한테 사이버 범죄 저질렀으면 사과를 하던가 [1] 나르시갤로그로 이동합니다. 09.15 77 1
2889308 ㅆㅇㅆ 빤스런했냐? 사과는 왜 없냐? [2] 나르시갤로그로 이동합니다. 09.15 88 3
2889307 ㅆㅇㅆ 너는 확증편향 심각해서 깃갤 가면 잘 어울릴거다 나르시갤로그로 이동합니다. 09.15 54 2
2889306 ㅆㅇㅆ 정신병 있는거 확실하지? 나르시갤로그로 이동합니다. 09.15 61 2
2889305 ㅆㅇㅆ 누가 나랑 말투가 똑같아? 전문 용어로 확증 편향이라 한다. 나르시갤로그로 이동합니다. 09.15 59 2
2889304 왜 하필 남쪽에서 태어났을까 그많은 나라중에 타이밍뒷.통수한방(1.213) 09.15 49 0
2889303 ㅆㅇㅆ 너는 왜 프갤에 유입되어 프갤에 흙탕물 뿌리니?? 나르시갤로그로 이동합니다. 09.15 56 1
2889301 c언어 질문좀 [14] 7월갤로그로 이동합니다. 09.15 117 0
2889300 ㅆㅇㅆ아 망상 좀 그만해라. 너는 증거 없다. 나르시갤로그로 이동합니다. 09.15 54 1
2889299 싸우지마라 [1] 밀우갤로그로 이동합니다. 09.15 65 0
2889298 개발을 잘 하는 사람이 누구냐? 기계를 효과적으로 사용하는 사람이다. ㅇㅇ(106.241) 09.15 63 0
2889297 왜 자꾸 121.139로 내 글에 댓글달면서 애미창년 소리를 하는데 [1] ㅆㅇㅆ(124.216) 09.15 103 0
2889295 난 저새끼 이해가 안가는게 걍 가만히 있는데 시비걸다 쳐맞는단거임 [9] ㅆㅇㅆ(124.216) 09.15 138 0
2889294 훔. ㅇㅇ(221.146) 09.15 63 0
2889293 루비점마는 개 웃긴게 121.139 지랑 말투 똑같고 ㅆㅇㅆ(124.216) 09.15 83 0
2889292 ㅆㅇㅆ이 오늘 털리는 이유 뭔가 글 봤더니 나르시갤로그로 이동합니다. 09.15 97 4
2889291 역시 무능한 늙은이들이 제일 문제임 프갤러(125.131) 09.15 85 2
2889290 ㅆㅇㅆ 얘는 인간이 글러 먹었어. 인격도 처참하고 나르시갤로그로 이동합니다. 09.15 75 2
2889289 나님은 지금 Ada 예외처리 글 작성하냐 정신이 없다 [1] 나르시갤로그로 이동합니다. 09.15 85 0
2889288 121.139는 내가 아냐. 난 유동으로 글 안 써. 나르시갤로그로 이동합니다. 09.15 82 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2