본문 바로가기

항해99

[항해99] WIL 24.03.23

FE & BE 클론 프로젝트

이번주는 각 조마다 원하는 프로그램을 정해서 클론 코딩을 했다.

우리 조는 인스타그램으로 결정하고, SA를 작성했다.

근데 기능 구현을 하다보니까 많이 추가가 됐다.

내가 맡았던 부분은 팔로우, 언팔로우, 팔로워 목록조회, 팔로잉 목록조회, 좋아요 부분이였는데,

생각보다 빨리 끝나서 댓글 CRUD까지 구현하게 되었다.

 

다른 분이 하던 곳에서 구현이 안된 부분이 많아 나눠서 해보기로 했었다.

근데 그 중에서 팔로우하는 사람 게시물 조회를 했어야하는데, 이 부분 구현하는게 너무 어려웠다.

어떻게 해야할 지 감도 안잡혀서 gpt한테도 많이 물어보고 다른 사람이 했던 깃허브도 찾아봤는데 참고가 될만한 자료를 찾을 수 없었다.

그래도 천만다행인 부분은 우리 팀에 코드를 잘 짜시는 분이 계셔서 그 분이 코드를 작성해주셨다.

// 팔로우한 사용자의 게시물 가져오기
    @Transactional(readOnly = true)
    public List<PostResponseDto.PostsResponseDto> getPostsOfFollowedUser(UserDetails userDetails) {
        User user = userRepository.findByUsername(userDetails.getUsername()).orElseThrow(
                () -> new NullPointerException("존재하지 않는 사용자입니다.")
        );

        List<Post> posts = new ArrayList<>();
        List<Follow> followList = user.getFollowList();
        for (Follow follow : followList) {
            posts.addAll(postRepository.findByUserId(follow.getFollowingUserId()));
        }

        if (posts.isEmpty()) {
            throw new CustomApiException("게시물을 찾을 수 없습니다.");
        }

        return getPostsResponseDtoList(posts, user);
    }

 

현재 필수 구현기능은 전부 다 되어있는 상태인데, 무한 스크롤까지만 더 구현을 해보고 있다.

완성이 된다면 다음주에는 밀린 코드 리뷰를 해야겠다!!!

 

https 배포 방법에 대한 내용을 정리했다.

https://development-history9904.tistory.com/34

 

저번주 목표 달성 여부 

회색+밑줄 : 달성

검정 글씨 : 미달성

파란 글씨 : 반정도 달성

 

1. aws acm 발급, 도메인 연결 하는 부분 정리해서 올려보기

2. 스터디 준비 할 때 1레벨 프로젝트 수정해서 주석 모두 달아보기

다음주 목표

1. 앞서 했던 협업 프로젝트 리뷰해보기

2. 실전프로젝트 파이팅하기!!!!