• 코드 컨벤션

    목적 : 코드 컨벤션의 궁극적인 목표는 누구나 쉽게 코드를 이해하고 사용할수 있게하기위함

    1. 사전에 정의한 변수명을 사용할 것
    2. 변수명을 정할 때 보편적인 명명 규칙을 지킬 것
      1. 클래스나 메소드명은 파스칼 표기법을 따른다.(모든 단어에서 첫 문자는 대문자 나머지는 소문자)
      2. 변수, 파라미터 등은 카멜 표기법을 따른다
      3. 동사 원형만 사용할 것
    3. 변수명은 축약하지 말 것
      1. 변수명만 읽고서도 무슨 역할을 하는 지 유추할 수 있게 하자
  • 깃플로우 전략

    main : push 금지 (마지막에 완성본만 push)

    develop : default 브랜치로 설정 (병합은 여기에) ⇒ (예시) git push origin develop

    단, PR은 2명 이상의 approve를 받은 이후 병합할 것. 또한 PR 요청 후 빠르게 리뷰해주기

    feature/기능 : 기능별로 branch명 작성 ⇒ (예시) git branch feature/login

  • 프로젝트에서 사용할 기술 스택을 정리해 와 주세요!

    • Spring boot 3.0.2
    • H2 Database / MySQL
    • Springboot
    • Gradle
    • ORM: Spring Data JPA(Hybernate)
    • Spring Security
    • Websocket
    • IDE: Intellij
    • Redis
    • ERD Cloud
    • API 컨벤션
  • 이번 주 한 일 + 회고

    • 팀 전체
      • 게시판+댓글+좋아요 기능 완성
      • 유저 프로필 조회/수정 기능 완성
      • 유저 + 게시판 기능 통합
    • 팀원 개인별로 작성해 주세요.
      • 승호 : 유저(member 엔티티) 프로필 관련 부분을 맡아 구현하였습니다. 추가적으로 친구 신청 수락/거절 기능을 만들어갈 예정입니다.
      • 루비 : WebSocket + Stomp + Redis 활용한 채팅 구현을 맡아서 공부한 후 현재는 기능 구현 중으로 다음 주 화요일까지는 백, 프론트 모두 마무리할 계획입니다.
      • 수 : jwt토큰과 redis 를 활용한 security를 구현 하였고, 예측 가능한 예외상황들에 대한 custom exception 을 만들어 보았습니다. websoket 통신을 통한매칭서비스를 구현 예정입니다.
      • 재형 : 게시판,댓글,좋아요 기능을 구현하게 되었는데, 익명닉네임을 어떻게 구성할지에 대해 많이 고민했었고, Arrays.asList() 를 통해 랜덤한 배열값을 만들고 Collections.suffle() 함수로 랜덤한 닉네임을 만들게 구현하였습니다.
      • 시원 : 매칭 관련 부분을 맡아 어떻게 구현할지 고민해보았지만, 난이도가 많이 높아 다른 팀원분께 도움을 구하였고, 유저 프로필중 매너점수에 대한 구현을 맡아 구현할 계획입니다.
  • 이외에도 기술적인 방향을 잡기 위한 질문을 정리해두시면 가장 좋습니다!

  • 숙제 : 멘토링 결과 다음 주까지 해올 일

    • 팀 전체(월요일까지)
      • redis에 대해서 공부하기(기술 선정 이유를 명확히 하고 가자)

        • 팀 내부에서 redis를 사용하기로 한 상황 및 근거 정리
          • 예시) redis가 왜 빠를까? 내부 동작 방식 및 장단점 정리해보자
          • 클러스터, 레플리카 모드? fail-over
      • servlet request의 동작 방식을 명확히 알 것

    • 팀원 개인별로 작성해 주세요.
      • 승호: 채팅은 왜 RDB에 저장하지 않는 이유