OpenGL과 C++ (부스트 라이브러리 포함)을 사용하여 나만의 3D 게임 엔진을 만들고 있습니다. 나는 그것이 LOT의 작품이라는 것은 말할 나위도 없다. 로드를 줄이기 위해 동일한 클래스를 처음부터 만드는 대신 내 요구와 거의 일치하는 Boost의 래퍼 클래스를 만들기 시작했습니다. 또한 내 명명 체계는 Boost 및 STL과 매우 다르므로 처음에는 코드베이스 전체에 일관성있는 내용을 유지한다고 느꼈습니다.처음부터 다시 설계하는 대신 래퍼 클래스를 작성하는 C++의 소프트웨어 아키텍처가 좋지 않습니까?
저는이 관행이 나쁜 설계 기법이라고 우려하고 있습니다. 그렇게해도 괜찮습니까? 그렇게 많은 래퍼 클래스를 만드는 것으로부터 예기치 않은 문제가 발생할 수 있습니까?
"예기치 않은 문제가 발생할 수있는 일"은 많지 않습니다. 래퍼 클래스에서 이해할 수없는 원하지 않는 기능을 제대로 숨기고 메모리에 너무 빡빡하지 않으면 미리 만들어진 유형을 래핑하는 것이 좋습니다. – George
그냥 이름을 변경하는 상속 kludge에서 벗어나십시오. 단점은 추상화의 추가 레이어 (올바르게 추상화되면 위쪽으로 변형 될 수 있음)와 래퍼에 버그를 삽입 할 가능성이 있다는 것입니다 (처음부터 모든 것을 작성하는 것과 비교하면 버그가 훨씬 적음). – user4581301
나는 모든 용기, 끈, 물줄기 등을 직접 손으로 쓴다는 생각을별로 좋아하지 않는다. –