디시인사이드 갤러리

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

갤러리 본문 영역

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

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

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

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

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





2eec9e2cf5d518986abce8954785726fe7

이렇게 차가 있다 하자


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


차라는 걸 추상화한거


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


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



2eef9e2cf5d518986abce8954480746ab8


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


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


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


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


is-a 관계라는것


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


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


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


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





2eee9e2cf5d518986abce89547807768fb

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


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


has-a 관계는 무엇이냐


차 틀은 차지하고


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





2ee99e2cf5d518986abce8954486776bcd

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


컴포지션임



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


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


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


컴포지션 쓰라고 하는거


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


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






추천 비추천

1

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 해외에서 겪는 불합리한 대우에 대응 잘 할 것 같은 스타는? 운영자 25/11/03 - -
AD 저녁 뭐먹지? 오늘의 메뉴 추천! 운영자 25/10/31 - -
2889665 일하면서 ai 쓰지말라고 공지내려왔다.. [3] cvs.갤로그로 이동합니다. 09.16 152 0
2889664 오늘의 영상 기획 실마리: 지하철 안에서 잠 자는 뮤직비디오 발명도둑잡기(118.216) 09.16 113 0
2889662 20년 전, 미국의 쇠퇴를 예견한 에마뉘엘 토드, '서구의 패배'를 다시 발명도둑잡기(118.216) 09.16 88 0
2889661 맥주 한잔 하고 먹는 라면에 총각김치 왜이렇게 맛있냐?? ㅇㅇ(223.39) 09.16 61 0
2889658 이 사람 아이피 팔도중에 어디임 서울경기 강원 대구 전라도 경상도 중에 프갤러(115.139) 09.16 79 0
2889654 파이썬 잘 아는사람 있음 ㅇㅅㅇ?? 학기문제 알려줘 [4] ㅇㅇ(223.39) 09.16 130 0
2889653 포폴용 [7] ㅇㅇ(125.205) 09.16 114 0
2889650 컴퓨터 파워도 같이 보내면 어쩔까 삼성 파워, 메인보드 시디도 같이 넥도리아(119.195) 09.16 109 0
2889649 ‘케데헌’은 왜 한국이 아닌 미국에서 만들어졌을까 발명도둑잡기(118.216) 09.16 77 0
2889648 Best of Ki-jung | Parasite 발명도둑잡기(118.216) 09.16 62 0
2889647 ❤✨☀⭐⚡☘⛩나로님 퇴근합니당⛩☘⚡⭐☀✨❤ Naro갤로그로 이동합니다. 09.16 74 0
2889646 "처음부터 끝까지 그냥 쓰레기"... 자기 작품을 설명한 예술가의 본심 발명도둑잡기(118.216) 09.16 71 0
2889645 진지하게 주식을 못해서 평생 가난하게 살 확률이 존재하냐?? [1] ㅇㅇ(223.39) 09.16 124 0
2889644 술이 너무 먹고싶다 [1] 주아갤로그로 이동합니다. 09.16 102 0
2889643 새소리 스펙트럼 분석 발명도둑잡기(118.216) 09.16 73 0
2889641 담배 약 술 주아갤로그로 이동합니다. 09.16 75 0
2889640 논문 초록 읽어봤는데 대강 이런 원리라네 [1] ㅆㅇㅆ(124.216) 09.16 171 0
2889638 이제 배달을 빛의 속도로 받을 수 있는거냐? [1] 루도그담당(58.239) 09.16 111 0
2889636 다익스트라 알고리즘은 모든 노드에 대해서 들렀을때 최단거리 아녔나 [2] ㅆㅇㅆ(124.216) 09.16 153 0
2889635 예아 구글이 데이크스트라래 [3] 루도그담당(58.239) 09.16 116 0
2889634 근데 왜 다익스트라라 안하고 데이크스트라라고 하는거냐 [2] ㅆㅇㅆ(124.216) 09.16 145 0
2889632 데이크스트라 알고리즘 깬거 나왔다는데 [2] 루도그담당(58.239) 09.16 166 0
2889629 윤1공주 라 방 뿍뿍(119.202) 09.16 94 0
2889627 초록 뿍뿍(119.202) 09.16 112 0
2889624 뿡뿡 뿍뿍(119.202) 09.16 104 0
2889623 날틀 뿍뿍(119.202) 09.16 103 0
2889621 아니 jdbc session 이거 좆같네 ㅇㅇ갤로그로 이동합니다. 09.16 81 0
2889618 ‘인공지능이 인류를 말살한다?’ 큰 파장을 낳은 AI2027 보고서 발명도둑잡기(118.216) 09.16 97 0
2889617 <냥육권 전쟁> 한대서 생각나는 예전 글 발명도둑잡기(118.216) 09.16 68 0
2889615 <38사기동대> 있대서 생각나는 예전 글 발명도둑잡기(118.216) 09.16 75 0
2889613 오늘의 출판 기획 실마리: 지하철 온도 민원 등 항의 SMS,이메일 모음 발명도둑잡기(118.216) 09.16 91 0
2889611 <은수 좋은 날> 한대서 생각나는 예전 글 발명도둑잡기(118.216) 09.16 83 0
2889610 소규모 PG사 vs 솔루션 SI 회사 [1] 프갤러(112.172) 09.16 145 0
2889609 근로기준법으로 1년 휴가 30일로 늘려야돼 프갤러(218.154) 09.16 80 0
2889608 나의 추억(생각하고 싶지 않은 기억) 놓아주려고 하는데 넥도리아(220.74) 09.16 103 0
2889607 [애니뉴스] 귀인환등초 23화 연기 프갤러(121.172) 09.16 87 0
2889606 [애니뉴스] [공지] 서버 다운 현상에 관해서 [3] 프갤러(121.172) 09.16 99 0
2889600 내가 죄인이다. 욕구가 많은 동물이라서 미안하다. 911 테러 올려서 미 [1] 넥도리아(119.195) 09.16 85 0
2889599 첩만 수십명, 사생아 백명? 난리난 소림사 주지스님의 진실 발명도둑잡기(118.216) 09.16 60 0
2889597 중고나라 웹 글쓰기 금지 시행, 앱으로만 발명도둑잡기(118.216) 09.16 83 0
2889596 솔직히 그렇잖아. 단순 로그인 기능 만들어줘 이러는 애랑 [2] ㅆㅇㅆ(124.216) 09.16 150 1
2889595 나는 AI를 다들 써야 내 가치가 커진다 생각해 [3] ㅆㅇㅆ(124.216) 09.16 107 1
2889594 우울하네요 (기획) [1] 프갤러(49.174) 09.16 84 0
2889593 ❤✨☀⭐⚡☘⛩나로님 시작합니당⛩☘⚡⭐☀✨❤ [2] Naro갤로그로 이동합니다. 09.16 96 0
2889592 솔직히 AI 없었으면 나도 3일에 프로그램 1개씩 못찍어냈음 [4] ㅆㅇㅆ(124.216) 09.16 107 0
2889591 외계인의 스파이 고양이? 발명도둑잡기(118.216) 09.16 58 0
2889590 특이점 갤 눈팅하는데 [3] 루도그담당(58.239) 09.16 116 0
2889589 요즘 번역기 써보면서 느끼는데 AI 번역도구 만들어서 쓰고 있으니 편하다 ㅆㅇㅆ(124.216) 09.16 66 0
2889588 송영길이 이제와 말하는 이재명 안도와준 문재인 정부 발명도둑잡기(118.216) 09.16 77 0
2889587 요즘 현업 뛰는 프갤러랑 가끔 이야기하면서 많이 배움 ㅆㅇㅆ(124.216) 09.16 104 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2