[2장 18. 오늘 배울 객체 지향 ]
- 이름이 가지는 직관성
- 추상화와 응집화
- 오버로딩(Overloading)
객체지향에서 가장 중요한것이 무엇입니까?
"이름"
나는 컴퓨터로 프로그래밍 하였다.
컴퓨터 하면 무엇이 생각이 나죠?
TV - 볼륨조정 / 채널조정 / 파워조정
이름. 무엇을 가지고 있는지 어떤 기능을 가지고 있는지 알 수 있다.
이름을 봐도 모른다는 것은? 그것에 대한 경험이 없다.
ex)http 프로노콜.자료구조(Stack, List, Tree ..), 알고리즘...
하드디스크,cpu,키보드,마우스,
자바 언어를 공부하는데...자바로는 프로그래밍 한다.
컴퓨터에서 동작하는 프로그램을 만드는것!
그렇기에 컴퓨터를 이해야 한다
추상화 : 중요한 것은 남기고 불필요한 것은 삭제한다.
상황에 따라서 객체의 가지는 속성의 중요도가 달라진다.
※객제지향 -> 재사용이 중요
그러나 재사용은 어렵기에,업무와 관련된 것은 재사용이 어렵습니다.
응집도 : 관련된 것을 잘 모은다.
Math - 이름이 중요. 직관! 수학관 관련된것을 가지고있을거라고 예상할수있음
추상화,응집도,이름 --- '객체는 역할이 있다. 책임도 있다'
좋은 객체란 무엇인가?