일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 인스턴스
- GitHub
- Java
- #스파르타내일배움캠프
- #내일배움캠프
- KPT
- 스파르타내일배움캠프TIL
- 생성자
- diary
- 클래스
- Diary 해우소
- Java의 이점
- 변수의 다양성
- 감사기록
- 스파르타내일배움캠프
- 회고록
- Git
- #스파르타내일배움캠프TIL
- 메서드
- Github_token
- 성장기록
- TiL_1st_0419
- static
- 내일배움캠프
- 해우소
- Token
- 스레드
- 포맷은 최후의 보루
- JVM
- 객체지향 언어
- Today
- Total
몬그로이
팀프로젝트 진행 기록 1 ~ 2일차 본문
1일차
API명세서, ERD 다이어그램, 와이어프레임 작성
깃 설정, 푸시 테스트 및 기능 분담
등 기본 설정에 집중
2일차
Git 에게 데인 날
API 로직 한 가지를 작성 후 pull > update > push 를 하려고 했더니 알림창이 떴다
튜터님께 해결하기 위한 액션을 취했던 것들은 설명드렸지만
update 를 했던 것을 말씀드리지 않고 진행했더니 작성해 둔 코드가 초기화가 되어버렸다
작성하면서 메모해 두었던 것을 기반으로 재작성 완료 후 튜터님께 도움을 받으며 다시 push를 도움받았다
원인은
전 날 테스트 해본다고 branch를 이동다니면서 push 테스트를 했는데, push가 잘 안되자
깃을 잘 아는 update 하면 된다는 말을 들어서 그대로 진행하고서는
IntelliJ에서는 update 를 눌러져야 하나보다 하고 혼자 일방적으로 생각을 했었다
아무튼 그렇게 생고생하며 만들어낸 코드를 다시 짜고나서
branch를 바꾸든 뭘 하든, 무슨 일이 있어도 commit이 우선시 되어야 한다는 교훈을 얻었다
다음 API 를 구상하기 위해서 프로젝트 요구사항을 면밀히 분석해 보는 과정에서 잘 이해가 되지 않는 부분이 있었다
'비밀번호 수정 시, 본인 확인을 위해 현재 비밀번호를 입력하여 올바른 경우에만 수정할 수 있습니다.'
라고 하는 부분이었는데,
// 비밀번호 수정 전용 requestDto 생성...
// Dto 의 비밀번호가 채워져 있을 경우 기존 비밀번호를 한 번 더 받는다... 왜 기존 비밀번호를 먼저 받지 않고??
// redirect 사용해서 다른 메서드로 정보와 함께 보낸 후 비밀번호를 받아 확인 후 나머지 진행...
// security?????
위와 같은 별별 생각을 하다가 구상하기가 어려워서 튜터님께 상담을 갔다
그리고 매개변수로 Dto 2가지를 받아도 된다는 것을 알게 되었다
Dto 를 기능에 따라 여러가지를 만들어도 된다는 점은 알고 있었지만,
한 번에 두 가지를 받는 것은 안 된다고 여기는 고정관념이 있었던 것이다
아무튼 결론은 한 메서드 안에서 해결하기는 어려운 기능 구현이 될 것이라는 것은 자명해 졌다
그런데 나중에 생각해보니 다른 메서드들도, 다른 메서드를 호출해서 하는 것..
현재의 결론: 종합하기
// nullable 의 password dto를 만들어서 이 dto가 채워져 있을 경우
// redirect 사용해서 다른 메서드로 (다른 정보와 함께) 보낸 후 기존비밀번호를 받아 본인 확인 후 나머지 진행
// 여유가 있을 경우 security 적용
내일이 휴일이라 큰일이다
만들어보고 잘못된 점이 있으면 피드백을 받고 싶었는데..
1차 구현이 끝나고 나면 리팩토링과 userDetails 에 힘써봐야 겠다