템플릿이있는 클래스를 볼 수있는 곳이 많습니다. 템플릿을 사용하는 사람이 왜 템플릿을 사용했는지 생각할 필요가 없습니다.왜 부스트가 너무 많이 템플릿 화 되었습니까?
예를 들어, 뮤텍스 클래스 (들). 모든 뮤텍스 개념은 개념으로 일치하는 인터페이스로 몇 개의 기본 클래스 또는 추상 클래스를 간단하게 만들 수있는 템플릿으로 구현됩니다.
편집 후 답변 : 가상 기능의 비용에 대해 생각했지만 때로는 더 나은 이해를 위해 성능 저하를 거의주지 않을 가치가 있습니까? 때때로 템플릿을 잘못 이해 한 결과 템플릿 화 된 코드를 이해하고 컴파일러 오류를 해독하는 것이 매우 어렵습니다 (특히 부스트).
이 사람에게 좋은 질문이 될 것입니다 : http://stackoverflow.com/users/5597/anthony-williams (boost.thread의 저자) : p –
C++ 커뮤니티의 주된 철학은 " 당신은 요구한다 ". Boost 프로젝트는 STL과 마찬가지로 템플릿을 사용하여 모든 라이브러리를 설계함으로써 철학을 따르려고 노력하고 있습니다. 당신이 언급 한 것처럼 비용은 있지만 이해가 때때로 어려워집니다. 라이브러리를 원한다면 좀 더 쉽게 이해할 수 있습니다. 아마도 Qt 라이브러리를 살펴 봐야 할 것입니다. Boost가하는 것의 많은 것을 포함합니다. 제 의견으로는 Qt의 디자인은 대규모 C++ 개발을 가능하게합니다. Boost는 완전히 부족합니다. –