본문 바로가기

우아한 테크코스

[프리코스] 1주차 - 숫자야구

졸작때문에 미루던 프리코스 회고록을 이제서야 작성하려한다. 1주차는 10/19일에 시작되었다. 회고록의 내용들은 그 당시 Notion에 정리했던 것들을 바탕으로 작성했다.

 

⛅ 1주차 프리코스 시작


숫자야구 게임 ( 10/19 ~ 10/25)

Github : https://github.com/seyeonJeong/java-baseball-6

 

GitHub - seyeonJeong/java-baseball-6

Contribute to seyeonJeong/java-baseball-6 development by creating an account on GitHub.

github.com

 

 

제출 결과 : 2/2 테스트 케이스 통과

 

📖 회고록


💻 버전 정리

 

우선 JDK 버전을 맞추는 것에 대해 조금 시간이 걸렸다. 내 자바 환경이 Java 8 이였으나, JDK 17 버전에서 정상적으로 작동해야한다는 요구사항이 있었어서, 환경을 맞추는 것부터 시작을 했다.

 

💬 기능 요구사항 정리

 

다음으로 기능요구사항 정리를 진행했다. 마크다운 문법을 통해 README를 작성했는데, 아직 마크다운 문법이 익숙하지 않아서 프리코스를 진행하면서 익숙해지려고 노력해야겠다는 생각이 들었다 .. 그리고 기능 요구사항 정리를 잘 해놔야 개발 과정에서 헤매지 않는 것 같다. 초반에 작성한 내용보다 조금 더 기능이 추가 되었었다. 다양한 프로젝트를 진행하면서도 느낀 부분이여서, 이번 프리코스를 통해 확실하게 정리를 하는 버릇을 만들어야겠다.

 

🏫 컨벤션

 

이번에 미션을 진행하며 가장 중요했다고 생각이 드는 부분이다. 자바 컨벤션에 대해 정독을 했는데, 자바를 처음 배울때 알고있긴했던 내용이 있었다 (카멜 표기법) .  그래도 모르는 부분이 더 많았고, 컨벤션을 지키기 위해 클래스 이름이나 함수 위치 등등 생각하며 진행하다보니, 그동안 내가 가독성이 떨어지는 코드를 작성했던 것 같다. Git 컨벤션도 추가로 읽었었는데, 가독성이 좋은 Commit Message를 만들기 위해 나름 해봤는데, 아직 많이 부족한 느낌이다.

 

🚀 예외 처리

 

그동안 코딩을 했었던 경력으로 여차저차 돌아가는 코드를 만들었는데 .. 예외 사항에 대한 처리와 테스트 코드를 작성해야했다. 그동안 테스트 기반 프로그래밍을 전혀 해본적이 없었기에, 조금 생소했었지만, 그래도 예외처리를 생각하고 테스트 코드로 확인해보는게 훨씬 안정적인 프로그램을 만들 수 있겠다는 생각이 들었고, 테스트 코드를 돌려보는게 생각보다 많이 편리했다. 아래는 내가 생각한 예외 사항이다.

🥪 MVC 모델

 

그동안 굳이 필요하지 않다면 하나의 파일에 거의 모든 코드를 넣는게 코딩 방식이였는데, 이번 프리코스를 통해 MVC 패턴을 적용하고자 마음을 먹었다. MVC 패턴은 디자인 패턴 중 하나로, Model, Controller, View의 약자이다. 이때당시 내가 이해한 MVC 패턴은 Model에서 로직을 처리하고, View는 사용자에게 출력을 담당하고, Controller는 중앙제어를 맡고있다고 이해를 하고 1주차를 진행했었다. 큰 어려움이 없을 줄 알았지만 .. MVC는 서로에게 영향을 주어서는 안되지만 계속 영향을 줄 수 밖에 없는 상황이 발생했다. (내가 코드를 잘못짜서 그런듯함) 그래서 어떤 메소드가 Model일지 아니면 Controller일지, View에서 Controller로 어떠한 신호를 보내도 괜찮은지에 대해 많이 고민했었던 것 같다. 나름대로 답을 내려서 진행했었는데, 좀 더 공부가 많이 필요할 것 같다. 

 

 

 

 

마무리하며

 

이 글을 쓰고있는 시점에서는 3주차를 진행하고 있는데, 1주차가 익숙하지 않아서 그런지 가장 힘들었다... 하지만 컨벤션이나 TDD를 경험해볼 수 있다는 점에서 앞으로 진행할 프리코스를 맛보기 할 수 있는 중요한 주차였다고 생각이 든다.

그동안 굉장히 잘못된 코딩 습관으로 진행했다는걸 알게되었고 이걸 프리코스 동안 많이 고칠 수 있겠다고 느끼기도 했다.

4주차가 모두 마무리 되었을때는 개발자로서 많이 성장한 나를 볼 수 있었으면 좋겠다.

 

 

 

'우아한 테크코스' 카테고리의 다른 글