PR 시 1단계 결론

1. Model 의 상태값 출력 위치

지난 피드백을 보고 Model 이 가지는 상태값을 출력할 때 getter 를 쓸것인지, Model 에서 View 의 역할을 할 것인지 고민이 많았습니다. 일단 저는 getter 를 써서 모델이 가지는 상태값을 노출하는 방법보다 모델에서 정제된 값을 넘겨주는 방식을 택했습니다. 모델은 객체의 상태값을 관리하는 클래스이고 해당 값이 노출/수정된다면 보안의 문제가 발생할 수 있기 때문입니다.

PR 시 질문

1. 테스트를 위한 생성자

CarsTest 에서 제가 원하는 위치(position)에 있는 Car 를 생성하기 위해 실제 구현 코드 내에서는 사용하지 않는 생성자를 추가하였습니다. (Car(String name, int position)) 테스트만을 위한 코드는 애초에 구현한 코드를 테스트한다는 테스트 코드의 역할이 맞지 않아 적절하지 않으나 생성자의 경우 구현 코드와는 거리가 멀다고 생각합니다. 이후에 프로그램의 크기가 커짐에따라 사용될 가능성이 있을 수 있고 객체를 생성할 때 검증을 하므로 생성자에 한해 가능하다고 결론을 내려 추가했습니다. 카일님은 어떻게 생각하시는지 궁금합니다. 👀

2. Input 변수 내부 초기화 vs 파라미터

Input 이라는 변수를 내부 생성자에서 초기화하는 것과, 외부에서 해당 값을 파라미터로 주입해주는 것에는 어떤 차이가 있을까요? 랜덤을 테스트하는 것과 이어서 고민해보면 좋을 것 같아요

→ 지난번 피드백 중 일부 내용입니다.

이 문제에 관해 고민을 해보았지만 질문의 내용을 정확히 이해하지 못해 생각한 내용만이라도 적어봅니다. 내부 생성자에서 초기화를 한다면 해당 인스턴스에 속해있는 값일 것이고 외부에서 파라미터로 입력받는다면 외부에서 공용으로 쓰는 input 값일 것입니다. input 을 공유하는 범위에 속해있는 경우 상태값을 공유할 수 있습니다.

나름 생각을 해보려했으나 랜덤을 테스트하는 것과 어떤 연관성이 있는지 모르겠습니다...🥲