Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
서버 4조 지호준 과제 제출합니다.
리팩토링까지밖에 완료하지 못했습니다.
자바로 코드를 짜본 경험이 많지 않아서 어려웠지만 주신 힌트를 참고하며 리팩토링을 진행했습니다.
Enum과 NaturalNumber를 적용하면서 기존에 단순히 final로 상수를 선언하거나 원시값을 쓰는 것보다 실제로 가독성이 높아지는 것을 체감했습니다.
Position과 Node 클래스를 함께 구현했는데 이를 구현하는것이 많이 힘들었습니다.
사다리 로직에 대한 이해도도 부족했기 때문에 두 클래스가 Ladder에서 어떤 역할을 하는 지를 구현하면서 이해하려고 노력했습니다.
Ladder 클래스가 어떤 역할을 하는 지 다시 정리해보고 이를 바탕으로 game, creator, runner 역할에 맞게 분리하려고 노력했습니다.
자바에 대한 이해도와 특히 객체지향에 대한 이해도를 많이 높일 수 있었습니다.
스터디에서 진행했던 정적 팩토리 메서드와 의존성 주입에 대한 이야기가 인상깊었고 큰 도움이 되었습니다.
또한, 책임과 역할의 분리를 어디까지 해야하는 지에 대해 많은 생각을 해볼 수 있어서 이 부분도 과제 진행에 도움이 되었습니다.