Skip to content
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

[자동차 경주] 박지훈 미션 제출합니다. #219

Open
wants to merge 26 commits into
base: main
Choose a base branch
from

Conversation

Ji4017
Copy link

@Ji4017 Ji4017 commented Nov 1, 2023

No description provided.

bak40 added 26 commits October 28, 2023 13:07
Comment on lines +15 to +21
private fun isValidLengthAndLetter(carNames: ArrayList<String>) {
carNames.forEach { carName ->
if (carName.length !in MIN_NAME_LENGTH..MAX_NAME_LENGTH || !carName.all { it.isLetter() }) {
throw IllegalArgumentException("Car names must be alphabetic and have a length of 1 to 5 characters.")
}
}
}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

하나의 함수에서 두 가지 예외 처리를 한번에 하는 것도 좋지만 isValidLength()와 isValidLetter()로 나누어 함수는 한 가지 일을 하게 한다는 피드백을 반영하고, 에러 메세지의 구분된 출력을 통해 입력하는 사용자로 하여금 어떤 입력이 잘못된 것인지 확실하게 표현해주는 것도 방법이 될 수 있을 것 같아요!

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

길이 검사는 너무 간단하다 생각해 문자 검사와 함께 검사를 했는데, 너무 간단해서 이것을 하나의 기능으로 착각했던 것 같습니다... ' 함수는 한 가지 일을 하게 한다 ' 라는 피드백에도 어긋나고, 사용자 입장에서 봤을 때도 분명 구분된 출력이 더 편할 것 같아요 공감합니다! 해당 피드백에 더욱 신경 쓰며 코딩하게 해주셔서 감사합니다!

Comment on lines +23 to +28
private fun checkIfDuplicateNameExists(carNames: ArrayList<String>) {
val uniqueNames = carNames.toSet()
if (uniqueNames.size != carNames.size) {
throw IllegalArgumentException("Car names must not be duplicated.")
}
}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

아 중복 검사를 이렇게 간단하게 구현할 수 있네요. 배움 주셔서 감사합니다!

}

if (attemptCountInt <= MIN_ATTEMPT_COUNT) {
throw IllegalArgumentException("Attempt count must be a positive integer.")
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

매직넘버는 상수화를 통해 잘 관리해주셨는데 출력문들도 enum클래스나 constant로 통합하여 관리하는 것도 하나의 방법이 될 수 있을 것 같아요!

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이번 3주차 과제에서는 말씀해주신 enum 클래스를 한번 사용해보겠습니다!

@zoodung
Copy link

zoodung commented Nov 2, 2023

1주간 고생 많으셨어요! 남은 2주도 화이팅입니다!!

@Ji4017
Copy link
Author

Ji4017 commented Nov 2, 2023

정성스러운 리뷰 감사합니다! 남은 2주 마무리 잘 하시길 바랄게요!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants