주요안건
1.
ETA
2.
컨트롤러에서 서비스 메서드 매개변수에 Member Id vs Member
3.
서비스 레이어 인터페이스 분리 후 구현체 버저닝
4.
PR 타이밍
회의 내용
1.
ETA
a.
CI/CD 기능 구현하려면 필수 기능 구현을 28일 저녁까지는 완성해야 된다고 생각
b.
유저 API 테스트코드 작성이 오래 걸려서, 마감 기한을 지킬 수 있을지 판별이 안감
i.
28일 아침에 마감 기한 말씀하실 예정
2.
컨트롤러에서 서비스 메서드 매개변수에 Member Id vs Member
a.
MeberId
3.
서비스 레이어 인터페이스 분리 후 구현체 버저닝
4.
PR 타이밍
a.
기능 구현 전부 완료 시 PR
b.
기능 구현 하나 완료 시 PR
c.
둘 다 사용
물어볼 것
•
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가 된다.