인생에서의 마지막 도전이라 생각하고 결정한 항해 99를  맞이하는 1주 차입니다

나의 각오

지금까지 걸어온 길들도 쉽진 않았습니다 

하지만 지금만큼의 마음가짐을 가지고 해보고 싶다 느끼고  도전해본 기억은 없는 것 같습니다

 

항해 99 기간 중  매 시간을 허비하지 않도록 제 자신을 불태워

항해 99를 선택한 제 자신이 만족스럽다는 걸 느끼고 내 선택은 틀리지 않았다는 걸 증명하고 싶습니다 

 

항해 1주 차 2022/03/07~ 2022/03/13

2022/03/07~ 2022/03/10 ( 미니 프로젝트 : 스파르타 항해 나침반

https://youtu.be/ZOTxBnSEkKk

 

기획 배경 :

스파르타 항해 나침반은 99일간의 항해 기간 동안 개인/팀 스케줄 및 개발 공부 기록을 축적하면서 올바른 방향으로 나아가고 있는지 체킹 할 수 있는 웹사이트를 만들어 보고 싶었습니다 

 

필수 포함 사항 :

 

1. Jinja2 템플릿 엔진을 이용한 서버사이드 렌더링 

- 어떤 장점으로 사용하게 되는지

2.  JWT 인증 방식으로 로그인 구현하기

- 쿠키/세션 방식에 비해 어떤 장점이 있는지

 

 

01234

구현된 페이지와 API 들

1. 로그인 페이지 - login api

- 브라우저에서 가지고 있는 캐시가 있을 경우 입력한 아이디와 비밀번호에 따른 로그인

- 브라우저에서 가지고 있지 않은 캐시일 경우 로그인이 안되고 회원가입을 진행해야 함

-  입력받은 아이디에 토큰을 받고 입력값에 따른 데이터 베이스와 비교하여 로그인하기

-  입력받은 비밀번호를 암호화( 해쉬 함수 활용 )하여 데이터베이스에 저장하고

   사용자가 입력한 비밀번호도 암호화 ( 해쉬 함수 활용 )하여 데이터베이스와 입력값의  암호 값을 비교 후 로그인

-  로그인 시간제한 두기

- 값이 다 입력돼있는지 확인

2. 회원가입페이지 sign_up api

-  사용자가 입력한 아이디가 중복되는지 확인

- 사용자가 입력한 비밀번호가 재입력이 맞는지 확인

- 사용자가 입력한 비밀번호의 형식이 맞는지 확인

- 데이터 베이스에 모든 값이 저장되는데  비밀번호는 암호화 ( 해쉬 함수 활용 ) 하여 데이터 베이스에 저장

3. 달력 페이지 calender api

- 로그인될 시 calender_html 파일로 연결되야함

- 해당 월 단위로 이동하는 기능

- 해당 일자를 클릭 시 온 클릭 함수를 걸어 해당 날짜의 정보를 가져와 이동되게 함

- 해당 일자를 클릭 시 해당 일자에 대한 데이터베이스의 정보를 가져옴

4. 세부 리스트 페이지 - todo_list api

- 달력 페이지에서 날짜를 클릭 시 해당 날짜의 데이터베이스에 저장되어 있는 정보를 불러옴

- 데이터 정보가 있을 시 api에 작성한 해당하는 값들을 불러와  해당하는 날짜의 정보를 모아 보여줌

  없을 시 api에 작성한 해당 값들을 불러오지만 해당하는 날짜의 정보가 없기 때문에 보여주는 값들은 없음 

- 리스트의 체크박스를  누를 시 가운데 줄이 그어지고 색이 변화함

- 리스트의 완료된 체크박스를  누를시  원래 상태로 돌아옴

- 리스트를 삭제 시  해당 리스트가 삭제됨

5. 공부 일지 페이지 - list api

- 공부 제목, 개발 블로그 주소 , 참조용 주소, 내용 4개의 입력값을 받아 입력받은 순으로 저장하여 리스트를 보여줌

- 기록 완료 누를 시 메시지 창으로 기록 완료를 보여줌

- 입력받은 값들을 데이터 베이스에 차례대로 저장하고 리스트에 보여줌

- 리스트의 완료 기능을 누를 시 메시지 창이 나타나고 가운데 줄이 그어지고 색이 변화함

- 리스트의 완료를 해제 시 메시지 창이 나타나고 원래 상태로 돌아옴

- 리스트를 삭제 시 메시지 창이 나타나고 해당 리스트가 삭제됨

 

깃허브 주소 :

https://github.com/Hanghae99-6-9/Hanghae99_MiniProject

 

 

GitHub - Hanghae99-6-9/Hanghae99_MiniProject: Hanghae99 6기 : 1주차 9조의 MiniProject

Hanghae99 6기 : 1주차 9조의 MiniProject. Contribute to Hanghae99-6-9/Hanghae99_MiniProject development by creating an account on GitHub.

github.com

 

2022/03/10~ 2022/03/12  ( Javascript 기초 알고리즘 풀이 )

2022/03/13~ 2022/03/13 ( 1주 차 회고 ) 

항해를 시작하고 처음 만나는 팀원들과 함께한 팀 프로젝트였는데 팀원들과의 소통이 부족하여 팀 프로젝트에서 소통이 중요하다 느꼈고 방향성이 잘못 잡아지면  더 많이 추가할 수 있는 기능들도 추가할 수 없어 아쉬움이 남는다는 걸 느꼈습니다 

좋은 팀원분들을 만나 4일간 즐겁게 만들었고 이 인연을 소중하게 여길 것이고 앞으로 만나게 될 

항해 99의 6기 동기분들과의 인연도 소중하게 여길 것입니다 

 

아쉬운 점

각자 맡은 일에 대한 부분을 깃허브에 공유하고  사용해야 했지만 그렇게 하지 못한 점

발생하는 오류에 대해서 공유하여 소통하고 해결하였지만 많은 도움이 못된 점

해결 방법에 대한 피드백을 들어 배우는 시간이 뜻깊었지만 더 많은 피드백을 사용해서 적용하지 못한 점

 

 

기능상으로 구현하고 했던 시간이 부족해서 아쉽지만 짧은 시간에 많은 것을 배웠습니다

 

What I Learned

 

 

jinja2 : 파이썬에서 많이 사용하는 라이브러리인데 하나의 html 파일에서 연결을 도와주는 기능

 

API 란?

어떤 응용프로그램에서  서버와 웹페이지가 입력값과 출력 값이 정해져 데이터를 주고받을 수 있게 만들어진 규격

 

JWT 란?

 

현재 토큰 인증에서 가장 많이 사용되는 인터넷 표준 

JSON WEB TOKEN의 줄임말로 Json 객체를 사용해 정보를 안정성 있게 전달함

주로 사용자 인증이나 정보 전달에 사용됨

세션 저장소에  사용자 정보를 저장할 필요가 없기 때문에 서버 측 부담을 줄일 수 있음

 

 


 

1주 차 공부시간  : 95시간 

'프로그램 시작후 각 주차 정리' 카테고리의 다른 글

프로그램 4주차  (0) 2022.04.03
프로그램 3주차  (0) 2022.03.27
프로그램 2주차  (0) 2022.03.20
프로그램 알고리즘문제풀이  (0) 2022.03.18
항해 99 모의고사  (0) 2022.03.16

+ Recent posts