인터뷰 질문을 통해 고객이 차량의 사양을 볼 수 있도록 키오스크에서 자동차/트럭/밴을 표시하는 시스템을 어떻게 디자인 할 것인지 질문했습니다. (경고 : 나는 최근에 많은 OO 프로그래밍을하지 않았기 때문에 나쁜 어휘가 뒤따를 수도있다.)인터뷰에서 차량 구성 키오스크를위한 객체 지향 디자인
나는 휠베이스, 드라이브 트레인, HP와 같은 매우 기본적인 특성을 가진 차량으로 시작했다고 말했다. 그 다음 나는 그것을 차, 트럭 또는 밴으로 분류 할 것인데, 트럭을위한 침대 길이 또는 자동차의 트렁크 용량과 같은 더 구체적인 측정을 할 수 있습니다.
그런 다음 그들은 옵션을 추가하는 방법을 물었습니다. 나는 옵션이 모든 차량에 존재할 수 있으므로 차량에 옵션 목록이있을 수 있다고 말했을 것입니다.
마침내 그들은 그들이 트럭과 밴에서만 이용할 수 있었던 옵션이 있었지만 차가 아니라면 나는 물었다. 그리고 나는 약간 난처하게 굴었다. 설명 된 레이아웃을 고려해 볼 때이 방법을 멋지게 만들 수있는 방법이 있습니까? 이 문제를 해결하기 위해 클래스 계층 구조를 설정하는 더 좋은 방법이 있습니까? 아니면 약간의 추가 로직을 추가하지 않고도 쉽게 해결할 수없는 복잡한 문제일까요?