드디어 시작
오전 9시 스파르타 대표 범규님의 발제를 시작으로 항해99의 1주차가 시작되었다.
좋은 개발자란 무엇인지 말씀해주셨는데 정리해보면 다음과 같다.
1) 호기심이 많고, 스스로 문제를 파고들어갈 줄 아는 사람
2) 함께 밥먹고 싶고, 일하고 싶은 사람
좋은 개발자 이전에 좋은 사람이 되야겠다고 생각했다.
항해99 기간 동안 주 100시간씩 몰입하면서 효율적으로 일하고, 능동적으로 개선하는 개발자가 되어야지!
1주차 미니 프로젝트 기획
새로운 팀원들과 새롭게 프로젝트를 진행하게 되었다.
프로젝트 주제 선정부터 API 설계까지 빠른 시간 안에 이루어졌다.
역시 집단 지성의 힘은 위대해.
1. 프로젝트 주제
☕ 커피 덕후(coffee Duckhu) ☕
‘요즘 사람들 무슨 커피 먹지?’
커피에 진심인 사람들 모이세요! 서로의 최애 메뉴를 공유하고 어떤 커피가 인기 있는지 확인할 수 있습니다.
2. 페이지별 와이어프레임
1) 회원 기능 → 로그인 / 회원가입 페이지
- 이메일, 닉네임, 비밀번호로 회원 가입
- 정규표현식으로 유효성 검사
- 아이디 중복 확인
- 비밀번호 더블 확인
2) 여러 카페 메뉴 크롤링 해와서 보여주기 → 메인 페이지
- 다양한 카페 웹사이트 크롤링
- 스타벅스
- 할리스커피
- 이디야
- 메가커피
- 메뉴, 이미지, 메뉴 설명, 영양정보를 크롤링 → 이 중 이미지와 메뉴 이름만 출력
- 즐겨찾기 개수에 따라 인기 카페, 인기 메뉴 순위별 정렬하여 슬라이더에 출력
- 카페별, 커피 종류별 필터링 기능
- 처음 화면에 일정 개수만 보여주고 더보기 버튼으로 이후 내용 보여줌
3) 메뉴에 리뷰 달기 → 상세 페이지
- 메뉴의 상세 설명과 즐겨찾기 버튼
- 회원인 사람이 로그인했을 때 리뷰 달기 가능
4) 메뉴 즐겨찾기 → 마이 페이지
- 즐겨찾기 한 메뉴는 마이페이지에서 확인 가능
- 카페별, 메뉴별 정렬하여 출력
- 각 메뉴마다 삭제 버튼이 있고, 전체 삭제 버튼으로 전체 삭제도 가능
3. API 설계
로그인? JWT?
저번 사전 프로젝트 때는 로그인 기능을 제외하고 비밀번호 암호화만 구현했기 때문에
이번 프로젝트에서는 꼭 로그인 기능을 구현해보고 싶었다.
마침 JWT 인증 방식에 관련하여 로그인 세션을 진행해주셔서 그동안 궁금했던 점들을 맘껏 물어보았다.
Q. 세션과 JWT의 차이점은?
A. 저장장소의 차이라고 보면 된다. 세션은 서버에, JWT는 토큰에 저장하여 쿠키가 갖고 있는다.
Q. 그렇다면 로그아웃은 어떻게?
A. 웹 브라우저에 있는 쿠키를 삭제하는 것으로 구현한다.
세션에서 언급하신 단방향 hash 알고리즘 sha-256과 bcrypt 중에 어떤 방식이 현재 우리의 프로젝트에 최선일지 고민해보자.
오늘의 나는
새삼 저번 주가 널널했구나 깨달았다.
조금 피곤하지만.. 왠지 설레기도 하고?
선택과 집중. 몰입도를 더 높여보자.
'📝 TIL' 카테고리의 다른 글
[TIL] 1주차 미니 프로젝트ㅣ협업과 에러 (0) | 2022.11.16 |
---|---|
[TIL] Flask 로그인/회원가입 구현하기(JWT, 유효성 검사) (0) | 2022.11.15 |
[TIL] Java 열거 타입(Enum) (4) | 2022.11.12 |
[TIL] Java 참조 타입, 메모리 사용 영역, String, 배열 (4) | 2022.11.11 |
[TIL] Java 조건문, 반복문, break, continue (0) | 2022.11.10 |