본문 바로가기

전체 글42

TIL - 24.01.15 (팀 프로젝트 회고) 팀 프로젝트는 어떻게 진행됐는가 일주일에 걸친 팀 프로젝트가 끝이 났다. 그동안 배웠던 내용을 기반으로 개인 프로젝트를 시행하고, 이어서 진행한 팀 프로젝트였다. 팀원은 총 3명이였으며 (다른 조는 4명이다.) 팀장님은 (이하 팀장)상당한 코드적 지식을 가지고 계신 분이셨다. 팀장의 주도하에 프로젝트의 개요, ERD, 와이어프레임을 작성하고 팀장이 제안한 패키지 구조를 사용해 작업에 착수했다. 팀장이 제공해준 여러 코드를 참고하며 내 파트의 코드를 작성했다. 팀 프로젝트가 끝나고 팀 프로젝트는 전반적으로 팀장의 주도하에 진행됐다. 아무래도 팀원과 팀장 간의 지식의 깊이 차이가 꽤 났고, 잘 하는 팀원이 이끌어주면 프로젝트를 완성하는데 큰 도움이 되기 때문이다. 하지만 이런 방식은 스스로의 학습에는 큰 도.. 2024. 1. 15.
TIL - 24.01.11 과제 진행 상황 어제에 이어 과제 작성에 열을 가했다. 그 결과 오늘 프로젝트 요구사항에 부합하는 구현 코드를 완성했다. 팀원을 모집하는 포스트의 기본적인 CRUD부터 팀원 신청 내역을 조회하고 수락/거절하는 기능까지 구현했다. 사용자 인증 기능 눈여겨 볼 것은 각 서비스의 사용자 인증 기능이였다. 예를 들어 로그인하지 않은 사용자는 글을 작성할 수 없어야 하며, 팀장이 작성한 모집 포스트를 보고 참가자가 신청을 하면 이 요청에 대한 응답은 팀 모집글을 작성한 팀장만이 가능해야 한다. 이 기능에 대해선 팀원 중 한 분이 알려주신 코드가 있다. @Component class BasicAuth( private val request: HttpServletRequest, private val memberEnti.. 2024. 1. 11.
TIL - 24.01.09 코드 작성 시작 바로 어제 팀원과 프로젝트의 설계를 마쳤으므로 오늘부터는 본격적인 코드 구현을 들어가게 됐다. 프로젝트에서 내가 맡은 파트는 팀원모집 관련 서비스였다. 일단 팀원모집도 포스트를 이용해 구현하는 것이므로 기본적인 CRUD는 있어야 한다. 이전 과제와 조금 달라진 게 있다면 패키지 구조이다. 전 과제는 강의에서 진행한 대로 따라가며 DDD기반 도메인 모델 별로 묶었다면 이번 프로젝트는 application과 domain을 분리해서 패키지를 구조화했다. 처음 보는 낮선 구조였지만 이 구조가 좀더 Application단과 Domain 단의 분리에 수월하다고 느꼈다. "읽기 쉬운 코드" 오늘 진행한 세션에서 위 내용과 관련있는 내용이 있었다. 위 패키지 구조는 application service와.. 2024. 1. 9.
TIL - 24.01.08 팀 프로젝트의 시작 캠프에서 오늘부터 프로젝트를 진행한다. 프로젝트는 뉴스피드 구현이였다. 뉴스피드는 특정 관심 분야의 커뮤니티의 기능을 하면서 벨로그처럼 포스트 기능도 가진 사이트를 말한다. 핵심은 여러 게시물을 한번에 보여줌으로써 원하는 게시물을 선택해서 볼 수 있는 기능이다. 이번 프로젝트의 필수 조건은 포스트의 CRUD 기능, 뉴스피드 기능(메인 페이지, 전체 조회 페이지), 상세보기 기능, 댓글 CRUD 기능이다. 우리 조는 프로젝트 협업을 위해 팀원을 구할 수 있는 뉴스피드 사이트를 구상했다. 사이트 이름은 LMC. Learning Mate Community 의 약자이다. 커뮤니티가 가능한 포스트(일반적인 블로그 포스트와 같다.)와 동시에 팀원을 구하는 포스트 또한 작성이 가능한 구조다. 문제.. 2024. 1. 8.