24.1.8 TIL

전주현·2024년 1월 8일

TIL

목록 보기
19/21

1. 오늘 한 것

  • 프로젝트 초기 설정
  • spotless 적용
  • 코드,깃 컨벤션 마무리
  • 주간 기술 멘토링
  • 로그인/인증인가 개발 시작

2. 프로젝트 초기 설정

  • 프로젝트를 시작하기에 앞서 커스텀 응답, 예외 처리를 구현하였다.
  • 이전까지는 그냥 프론트에 응답 값으로 데이터만 넘겨주면 되는거 아닌가 하는 생각이였는데 팀원들과 기획을 하면서 궁금한 점을 찾아본 결과

    chatGPT는 이 사진과 같이 상태 코드, 메시지, 데이터, 메타데이터를 넘겨주는 것이 일반적인 방법이라는 설명을 해준다.
    그래서 데이터만 넘겨주는 것이 아닌 저 형태로 응답을 반환하도록 초기 설정을 해주었다.

3. spotless 적용

  1. 저번 프로젝트에서 다른 팀이 사용했던 spotless라는 코드 포맷을 지키도록 해주는 기능을 적용해보고자 하였다.
  2. spotless를 적용하는 것 자체는 어렵지 않았다. build.gradle 파일에 플러그인을 넣어주고 spotless 설정을 넣어주기만 하면 되었다.
  3. 하지만 이렇게 넣어주기만 하면 자동으로 적용되지는 않고
    ./gradlew spotlessApply
    위와 같은 명령어를 터미널에 입력하던가 gradle 창을 열어서 spotlessApply를 실행해주어야 적용이 되었다.
  4. 이를 해결하고자 build.gradle의 tasks안에 assemble.dependsOn spotlessApply를 넣어 빌드가 실행되면 spotless 규칙을 적용하도록 해보았다. 하지만 내가 생각하던 자동화는 런을 눌렀을 때 규칙 적용이 되는거였는데 이상하게 런을 아무리 해보아도 빌드가 실행되지 않는건지 코드가 규칙에 맞게 바뀌지 않았고 한참을 찾은 후에야 새로운 방법을 찾게 되었다.
  5. githooks 이라는 git 에서 어떤 이벤트가 생겼을 때 자동으로 특정 스크립트를 실행할 수 있게 해주는 기능을 사용하게 되었다.
  6. githooks의 실행 조건 중에 커밋을 할때 스크립트를 실행하도록 하는 조건을 사용해서 spotless 자동화 까지는 아니여도 반자동화는 구현했다.

4. 코드,깃 컨벤션

  • 캠프를 처음 시작할 때 까지만 해도 컨벤션이 있다는 것만 알고 어떻게 정하는건지 좋은게 무엇인지 하나도 모르던 때가 있었는데 이제는 팀원들과 소통하며 사용하고 싶은 컨벤션을 얘기해 볼 수 있는 정도는 된 것 같다.
  • 다양한 컨벤션을 적용해보는 것이 되게 좋은 경험이라고 생각하는데 여러 사람들을 만나며 프로젝트를 한 덕분에 여러 컨벤션을 배우게 된 것 같다.

5. 기술 멘토링

  • 저번 주 금요일에 SA피드백을 받고 주말이 지난 바로 월요일에 기술 멘토링을 받게 되었는데 주말동안은 크게 기획쪽이나 코드 개발에 진전이 없어서 기술멘토링에서는 주로 우리 팀이 궁금했던 질문들을 하는 시간을 가졌었다.
  • 웹소켓을 이용한 실시간 채팅 기능이나 프론트를 구현하는 방법 등등 모르는 것들이 많아 아직 질문하기에도 조금 정리가 되지 않은 느낌이 많이 들었다.
profile
개발

0개의 댓글