항해99 8

10주차 실전프로젝트 중간 회고

기간 : 03/14 (금) ~ 03/20 (일) MVP 기능 구현 & 오류 해결 & 중간발표 준비 MVP 기능을 다듬고 발생하는 오류를 수정, 중간발표 준비 배운점 기간 안에 빠르게 MVP 기능 구현에 집중하다보니 테스트 코드를 작성하지 않아서 발생하는 문제가 많았다. 다른 코드를 수정하면 기존에 짠 코드에 영향을 미치게 되며 잘 실행됐던 api도 어느순간 오류가 발생하는 것을 경험했다. 간결하게 코드를 작성하되 테스트 코드를 잘 짜는 것도 중요함을 느꼈다. 내 코드뿐만 아니라 팀원들이 작성한 코드에 대한 이해도 잘 하고 있어야겠다. 프로젝트를 꾸준히 진행하다보니까 간결한 코드, 리팩토링에 관심이 많아졌다. 어떻게 하면 더 이해하기 쉬운 코드를 작성할 수 있을지 배워야겠다. 새로운 기술도 중요하지만.. ..

8~9주차 실전 프로젝트 중간 회고

기간 : 02/25 (금) ~ 03/13 (일) 프로젝트 기획 & 팀원들과 협업 & MVP 기능 개발 3주차에 있을 중간발표 전까지 빠르게 기획을 마무리하고 MVP 기능을 구현, 팀원들의 역할 분담, 리더로서 역량 다지기 이번주 내가 배운 것 백앤드 MVP 기능 구현 (서비스에 꼭 필요한 기능을 빠르게 구현하기) 로그인, 회원가입, 인증메일 발송, 유저정보 api 구현 레벨업, 챌린지 중간 참가로직 구현, 유저별 챌린지 성공-실패 여부 조회 로직 구현 서버 배포 및 프론트와 테스트 진행 프론트와 연결 중 발생한 오류 해결 협업 매일 회의 때 각자 진행상황 공유 및 TODO 공유 대략적인 전체 일정 정한 후 일주일 단위로 스프린트 진행하려고 노력 계획한 것 보다 더 많은 오류와 추가적인 사항들이 계속해서 ..

6주차 미니프로젝트 회고

기간 : 02/11 (금) ~ 02/17 (목) 이번 주차 주제 : 협업 & 하나의 프로젝트 구현 개인 목표 : FrontEnd와의 커뮤니케이션, API, DB 명세서 구체화 자신이 쓴 코드에 이유가 있는 것, 왜 이렇게 접근할 생각을 했는지, 이 방식을 선택한 근거가 있는지, 더 나은 방법을 위해 무엇을 찾아봤는지? 생각하며 코드를 구현하기 이번주 내가 배운 것 백앤드 API를 만들고 프론트와 연결하는 방법 CORS 설정 JWT를 이용한 로그인 구현 Swagger 설정 프로젝트에서 DB 모델링 및 연관관계 적용하기 배운점 처음으로 프론트엔드와 협업을 진행했다. 혼자서 구현하는 것보다 더 구체적으로 API와 요청, 응답 메시지를 설정해야할 필요성을 느꼈다. 또한 API를 설계할 때 프론트와 같이 모여서 ..

5주차 주특기 심화 회고

기간 : 02/04 (금) ~ 02/10 (목) 이번 주차 주제 : API 개발 & 주어진 테스트 코드를 통해 요구사항 해결 개인 목표 : 개인과제 매운맛까지 완료하기 이번주 내가 배운 것 백앤드 지금까지 배운 것들을 종합하여 요구 사항에 맞게 로직을 구현 음식점 API구현 주문 API를 구현하면서 조금이나마 주문 프로세스에 대해 알게 됐다. 개인 공부로 SpringWebFlux를 공부 WebFlux를 통한 채팅서버 클론코딩 배운점 과제로 제시된 요구사항을 하나씩 해결해가며 API 로직 구현 방법에 더욱 익숙해질 수 있었다. UI 없이 온전히 백앤드 서버 API 구축하는 방법을 익힐 수 있었다. Spring의 3계층을 역할 별로 구분해서 구현하는 데 더 익숙해졌고, service 단에서 복잡한 비즈니스 ..

4주차 주특기 숙련 회고

기간 : 01/28 (금) ~ 02/03 (목) 이번 주차 주제 : 주특기에 익숙해지고 조금 더 생각하며 로직 짜기 개인 목표 : 프로젝트에 시큐리티 적용, JPA 연관관계 적용, CRUD 연습 이번주 내가 배운 것 백앤드 스프링 시큐리티 세션방식으로 로그인 적용, 시큐리티 필터 사용해서 커스텀 하기 OAuth2로 구글, 카카오 연동 JPA의 연관관계, 영속성 컨택스트 적용하고 익숙해지기 RESTful API 작성해보기 게시글 페이징 처리 적용 validation 사용 공통 예외 처리 → 공통 ErrorResponse 만들기 배운점 과제 시작 전 API를 혼자 짜보았다. REST API를 짜고 싶었는데 작성 후 매니저님한테 피드백 받으면서 수정했다. API를 먼저 설계하고 개발에 들어가니까 편했다. 이번..

3주차 주특기 기초 회고

기간 : 01/21 (금) ~ 01/27 (목) 이번 주차 주제 : 메타인지 [무엇을 알고 무엇을 모르는지 아는 것] 개인 목표 : CRUD, 시큐리티로 OAuth2, JWT 적용해보기 이번주 내가 배운 것 백앤드 스프링 시큐리티, 적용 (세션 방식, JWT 방식) JPA의 연관관계, 영속성 컨택스트 서비스단의 필요성과 트랜잭션 DB 격리수준 스프링부트의 트랜잭션 흐름 페이징 처리 WEB HTTP 요청방식 MIME 타입 XSS, CSRF 배운점 스프링부트를 이용해서 간단한 게시판 CRUD를 만들었다. 인풋은 많은데 API를 만드는 것부터 로직을 짜는 것까지 정형화가 안 되어있다보니 아웃풋을 어떤 것을 선택하고 작성해야할지 헷갈렸었다. 하지만 그냥 내가 원하는대로 짜면 되는 것 같다. CRUD를 작성하는..

2주차 프로젝트 회고

기간 : 01/14 (금) ~ 01/20 (목) 이번 주차의 주제: 알고리즘 문제를 해결하는 경험을 많이 해보는 것, 자바 문법에 익숙해지기 목표 : 컴퓨팅적 사고, 언어 기초 다지기 배운점 기본적인 알고리즘 문제를 통해 자바 언어의 사용법을 익혔다. 달리기반을 선택해서 조원들과 함께 40문제를 풀었다. 처음엔 풀만했지만 단계가 올라갈수록 문제에 접근하는 방법이 생각나지 않아서 힘들때가 많았다. 그래도 꾸준히 풀다보니 비슷한 문제들은 어떻게 접근해야하고 어떤 자료구조를 사용하면 좋을지 감이 잡혀갔다. 시간복잡도와 공간복잡도에 대해서는 좀 더 공부해야겠다. 문제를 푸는 것에 그치는 것이 아니라 담당 문제를 정해 조원들에게 풀이 방식을 발표하는 시간을 가졌다. 내가 어떻게 접근했고 문제를 풀었는지 남한테 설..

1주차 프로젝트 회고

기간 : 01/10 (월) ~ 01/13 (목) 이번 주차의 주제: 적응, 배운 기능 적용, 함께 일하고 싶은 사람되기 배운점 몰입의 중요성.. 항해 시스템에 적응하자 100시간을 하며 임계점을 넘어보자 팀으로 프로젝트를 진행하면서 협업의 중요성에 대해 알게 되었다. 협업툴로 깃헙을 사용했는데 병합하는 과정에서 충돌이 많았고 메인브랜치의 부재, 깃헙 로그인 문제 등에서 시간을 뺏겼다. 충돌을 해결하는 과정은 조금 익숙해진 것 같다. 깃헙의 협업 플로우에 대해 조금 경험할 수 있었다. 서버는 Flask로 사용, 템플릿 엔진으로 Jinja2를 사용하면서 서버사이드렌더링에 대해 더 알게 되었다. SSR과 CSR의 차이점, 장단점을 정리해야겠다. 프로젝트를 진행할 때 앞단의 중요성, API 설계, DB 모델링,..