Notice
														
												
											
												
												
													Recent Posts
													
											
												
												
													Recent Comments
													
											
												
												
													Link
													
											
									| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
													Tags
													
											
												
												- C 언어 코딩 도장
- Algorithm
- 알기쉬운 알고리즘
- list 컬렉션
- 메모리구조
- insertion sort
- 혼자 공부하는 C언어
- datastructure
- 윤성우의 열혈 자료구조
- Stack
- 이것이 자바다
- R
- stream
- C programming
- Serialization
- 윤성우 열혈자료구조
- Graph
- coding test
- s
- Selection Sorting
- buffer
- 이스케이프 문자
- JSON
													Archives
													
											
												
												- Today
- Total
Engineering Note
[OOP] 역할, 책임, 협력 그리고 캡슐화, 상속, 추상화 본문
			Computer Science/OOP & Design Pattern
			
		[OOP] 역할, 책임, 협력 그리고 캡슐화, 상속, 추상화
Software Engineer Kim 2025. 6. 19. 17:00객체지향프로그래밍 에서 역할, 책임, 협력 그리고 캡슐화, 상속, 추상화의 관계
객체지향 프로그래밍은 길을 찾는 방법을 통해서 설명할 수 있다. 길을 찾을 때 길을 아는 사람에게 물어보는 방법이 있고, 지도를 보고 찾아가는 방법이 있다. 길을 아는 사람에게 물어보는 방법은 길찾기라는 기능 그 자체에 초점을 맞춘 해결책이라고 볼 수 있다. 그런데 지도는 현실 세계를 추상화한 모델로, 구조적으로 길을 찾는 방법을 알려준다. 그리고 원래 목적지와 다른 길을 찾는 범용적인 도구다.
객체지향 프로그래밍은 길을 찾는 방법에서 지도를 보고 길을 찾는 방법과 유사하다. 기능에 구조를 맞추는게 아니라, 구조에 기능을 종속시킨다. 이를 통해 얻을 수 있는 장점은 재사용가능하고, 변경에 용이한 코드를 작성할 수 있게 해준다. 각 객체를 역할과 책임을 가진 자율적이면서 협력적인 공동체를 이루는 관점으로 바라보면 가능하다.
이러한 역할, 책임, 협력으로 객체지향을 바라보는 관점은 철학적이고 추상적인 과점이고, 이를 현실적인 기술로 구현하는 방법이 캡슐화와 상속, 그리고 추상화다.
참고 자료 : 객체지향의 사실과 오해 - 역할, 책임, 협력관점에서 본 객체지향(조영호 지음)
'Computer Science > OOP & Design Pattern' 카테고리의 다른 글
| [OOP] DIP(의존성 역전 원칙) (0) | 2025.10.17 | 
|---|---|
| [Design Pattern] Strategy Pattern(전략 패턴) (1) | 2025.07.14 | 
| [OOP] OCP (Open-Closed Principle) 개념 정리 (0) | 2025.07.07 | 
| Object Oriented Programming(객체 지향 프로그래밍) (0) | 2022.07.09 | 
| [OOP] 객체지향 개념 (0) | 2022.01.29 | 
			  Comments
			
		
	
               
           
					
					
					
					
					
					
				 
            