지하철 노선도는 위치와 거리등의 세부 정보는 최대한 생략하고 역간의 연결에 대한 정보만을 전달하는데 집중한다. 정확성보다 사용자의 목적에 집중하여 추상화한 것이다.
추상화를 통하여 복잡성을 극복할 수 있다.
추상화
- 어떤 양상, 세부 사항, 구조를 좀 더 명확하게 이해하기 위해 특정 절차나 물체를 의도적으로 생략하거나 감춤으로써 복잡도를 극복하는 방법.
- 복잡성을 다루기 위한 추상화의 2단계
- 구체적인 삼루들 간의 공통점은 취하고 차이점은 버리는 일반화를 통해 단순화한다
- 중요한 부분을 강조하기 위해 불필요한 세부 사항을 제거함으로써 단순하게 만든다
- 모든 경우에 추상화의 목적은 복잡성을 이해하기 쉬운 수준으로 단순화하는 것
사람들은 본능적으로 공통적인 틁성을 기준으로 객체를 여러 그룹으로 묶어 동시에 다뤄야 하는 가짓수를 줄임으로써 상황을 단순화하려고 노력한다. 이 때 객체를 묶기 위한 그릇을 개념(concept)이라고 한다.
객체를 적절한 개념에 따라 분류하지 못한 애플리케이션은 유지보수가 어렵고 변화에 쉽게 대처하지 못한다.
적절한 분류 체계는 앱을 다루는 개발자의 머릿속에 객체를 쉽게 찾고 조작할 수 있는 정신적인 지도를 제공한다.
타입은 개념이다.
객체의 타입은 객체가 어떤 행동을 하느냐에 따라 결정된다.
Loading Comments...