하나의 기능을 다양한 기능으로 설계하는 인터페이스 원칙
이 원칙의 대표적인 예시는 std::vector이다.
std::vector는
주어진 인덱스에 담긴 원소를 접근하기 위한
두 가지 메서드를 제공한다.
경곗값을 검사하는 at()메서드를 사용해도 되고,
경곗값을 검사하지는 않지만
좀 더 속도가 빠른 배열 표기법을 사용해도 된다.
경곗값 검사를 반드시 한다면
어느 정도 오버헤드를 감수하고 at() 메서드를 사용하면 된다.
이 원칙은 인터페이스를 군더더기 없이
설계해야 한다는 원칙의 예외로 봐야한다.
이렇게 예외를 적용하더라도
나머지 부분은 반드시 군더더기 없이 잘 설계해야한다.
'프로그래밍 언어 > C++ STL' 카테고리의 다른 글
STL Map (0) | 2024.12.02 |
---|---|
STL의 vector, push_back()과 emplace_back() (0) | 2024.11.27 |
STL 여섯 가지 주요 컴포넌트 - 컨테이너 - 시퀀스 컨테이너 (3) | 2024.10.12 |
C++ STL Set (0) | 2024.08.17 |