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

2주차 미션 / 서버 4조 김광일 #1

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

Conversation

kamothi
Copy link

@kamothi kamothi commented Mar 26, 2024

안녕하세요 2주차 미션을 수행한 김광일(kamothi)입니다.
이번 미션을 진행하면서 네트워크에 대해 다시 정리해보고 스프링에서 자동으로 설정해두었던 것들을 직접 구현해보면서 그 내부의 원리에 대해 다시 정리해볼 수 있었습니다. 이번 미션의 경우 L7과 L4 사이 즉 어플리케이션 계층에서 소켓 인터페이스 사이의 동작 원리 그리고 HTTP에 대한 이해도가 꽤 있어야하는 미션이라 재밌게 진행했던 것 같습니다.

간단하게 미션을 진행하면서 수행했던 부분들에 대해 설명 드리겠습니다.(미션의 경우 힌트를 참고하여 진행하였습니다.)

  • 미션에서 요구하는 컨트롤러 기능들의 구현
  • 패키지 분리(Request, Response로 나누고 Request의 경우 각 영역에 맞게 분리하여 관리)
  • url, method enum 으로 분리

미션을 진행하면서 어려웠거나 해결하지 못한 문제는 아래와 같습니다.

  • 디미터 원칙을 지키는 것에 대한 어려움. 현재 저의 코드의 경우 무분별한 getter를 사용하여 해당 원칙을 제대로 지키지 못하고 있습니다.(최대한 지킨다고 노력했는데...)
  • 테스트 코드의 부재. 아직 테스트 주도 개발에 대해 어려움을 느끼는 것 같습니다. ㅠㅠㅠㅠ
  • Response 메시지 분리. Response Header 의 경우 다양한 필드들이 들어갑니다. 해당 메시지들을 필드 별로 enum으로 분리하여 관리할지 아직 고민인 것 같습니다.

아직 위에 대한 고민들을 해결 중이며 최대한 빠르게 해당 문제들을 해결하겠습니다. 또한 피드백을 적극 반영하여 리팩토링해보겠습니다.

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.

1 participant