-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
step3 #5070
base: leekangyon
Are you sure you want to change the base?
step3 #5070
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3단계 구현하시느라 수고많으셨습니다.
코멘트 확인해주시고 다시 리뷰요청 부탁드려요!
1. gitkeep 삭제.gitkeep 파일의 경우 git 은 디렉토리에 파일이 없을 경우 업로드 되지않아 2. 기능 목록 작성
3. AngularJS Commit Message Conventions 적용2번 기능목록에서 작성한 기능 단위로 커밋 컨벤션을 지켜서 commit 부탁드려요! 4. 콘솔에서 Scanner 를 통한 입력
현재 main 메서드 없이 테스트 코드로만 테스트가 가능한데요. 5. 객체 지향적 설계현재 코드가 객체지향적이지 않고 메서드만 존재하여 절차지향적으로 작성되어있습니다. 힌트를 드리자면 객체지향적설계와 요구사항의 내용들은 모두 구현해보시는데 초점을 맞춰보시면 좋을것 같습니다. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
코멘트 반영하시느라 수고많으셨습니다.
추가적으로 몇가지 코멘트 남겨두었는데
반영후에 리뷰요청 부탁드립니다!
import java.util.Scanner; | ||
|
||
public class InputView { | ||
public static Map<String, Integer> inputData() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
사용하지 않는코드는 제거해주세요!
|
||
public class ResultView { | ||
|
||
private static final String OutputRacing = "-"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
해당케이스는 클래스명에 사용하는 파스칼케이스입니다.
상수 표현 컨벤션을 찾아 적용해보면 좋을것 같아요.
return distance; | ||
} | ||
|
||
public void setDistance(int distance) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
규칙 9: 게터/세터/프로퍼티를 쓰지 않는다.
요구사항인 거리값 출력에 의해서 getter 제공은 하더라도 setter 사용은
객체지향적이지 않은 설계에 해당됩니다.
setter 를 제거하고 구현해보시면 좋을것 같습니다.
|
||
private static final int RandomRange = 10; | ||
|
||
public static void Race() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
메서드명은 카멜케이스를 사용해주세요!
} | ||
|
||
//Car 대수 만큼 객체 리스트 생성 | ||
public static List<Car> createCarList(int inputNumberOfCar) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
List<Car>
를 상태로 가지고있는 적절한 객체를 추가해보시면 좋을것 같아요!
} | ||
|
||
//랜덤값을 통한 전진여부 메서드 | ||
public static boolean checkRandomData() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
움직일지에 대한 여부는 Car 에서 처리해보도록 하고 단위테스트를 작성해보면 좋을것 같습니다.
return carList; | ||
} | ||
|
||
public static int addCount(int distance) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
조건에 따라 판단후 거리를 증가시킬지에 대한 판단은 Car 에서 처리해보도록
변경해보면 좋을것 같습니다.
현재 코드가 절차지향적이며 단위테스트 작성이 되어있지 않네요. 🥲 추가로 커밋 단위를 기능단위로 나눠서 해보시면 좋을것 같습니다! |
단위테스트 구현이 부실합니다...
리뷰 잘 부탁드립니다...!