주요안건
- ETA
- 컨트롤러에서 서비스 메서드 매개변수에 Member Id vs Member
- 서비스 레이어 인터페이스 분리 후 구현체 버저닝
- PR 타이밍
회의 내용
- ETA
- CI/CD 기능 구현하려면 필수 기능 구현을 28일 저녁까지는 완성해야 된다고 생각
- 유저 API 테스트코드 작성이 오래 걸려서, 마감 기한을 지킬 수 있을지 판별이 안감
- 28일 아침에 마감 기한 말씀하실 예정
- 컨트롤러에서 서비스 메서드 매개변수에 Member Id vs Member
- MeberId
- 서비스 레이어 인터페이스 분리 후 구현체 버저닝
- PR 타이밍
- 기능 구현 전부 완료 시 PR
- 기능 구현 하나 완료 시 PR
- 둘 다 사용
물어볼 것
- Position 변경 로직
- 카탈로그 Position을 바꾸려면, 보드 Entity에서 카탈로그를 불러와서 하나하나 돌려야 될텐데, 효율이 너무 안 좋은 거 아닌가?
- 답변: 효율이 안 좋은 게 맞다, 그래서 SQL 문과 Between을 사용하고, 두번 연산만 하는 게 좋을 것이다.
- 그리고 Position을 +1씩 하는 것보다, 2배수로 올리는 게 좋다
- 만약 카드가 3개 있을때 1,2,3 을 2,3,1 로 옮기고 싶은데, 이러면 +1이나 -1 연산을 여러번 해야한다.
- 근데 2배수로 하면 +1 -1 연산 대비 연산 수가 적다
- 2의 배수 채택!
- 2의 배수로 채택했을 때 로직
- 2,4,8,16,32 가 있을 때 2를 세번 째(8) 자리로 옮기고 싶다면?
- 4,8,2,16,32 가 되는데, 2 앞에 있는 것들은 나누기 2를 해주면 된다.
- 2,4,2,16,32 가 되고, 옮긴 2는 세번째 자리로 옮기는 거니까 2의 3제곱을 해주면
- 2,4,8,16,32 가 된다.
- 2,4,8,16,32 가 있을 때 4를 네번 째 자리로 옮기고 싶다면?
- 2,8,16,8,32 가 되는데, 4의 원래 위치와 4번째 위치사이의 값들을 2로 나눠주면
- 2,4,8,8,32 가 된다. 여기서 옮긴 8을 2의 4 제곱에 맞게 값을 바꿔주면?
- 2,4,8,16,32가 된다.