본문 바로가기

분류 전체보기260

Plmography 프로젝트 작업 로그 #21 - 엔티티와 VO (23.01.02 TIL) 3주전 프로젝트인 마카오 기프트때는 모든 엔티티의 필드들은 primitive 타입을 사용했었다. 그래서 이번 프로젝트에는 vo (value object, 값객체) 를 많이 사용해보겠다고 다짐을 했기 때문에 그렇게 작업을 하는 중인데, 아직은 엔티티와 vo 의 차이점을 명확히는 알지 못해서 헷갈리는 부분이 많다. 엔티티의 필드는 모두 VO 로 바꿔주는 것이 좋다. 모두 바꾸지 못할 경우 유일성이 있는 필드는 VO 로 만들어주자. 저번 프로젝트 때 받은 피드백인데, 당시에는 이렇게 머리로 받아들이기만 했는데 막상 구현하려고 하니 헷갈리는 것이다..! 동기 중 한 분께 여쭤봤더니 엔티티와 함께 태어나고 없어진다면 vo 로 할 수 있을 것이고, 그보다 더 독립적인 기능을 한다면 엔티티로 빼면 된다고 말해주셨지만.. 2023. 1. 2.
12월 다섯 번째 주간회고 (feat. Plmography 프로젝트 2주차) 📚 221225-221231 스프린트와 함께하는 프로젝트 2주차가 마무리 되었다. 이번 주는 반성할 부분이 너무 많다. 일단 주간 목표를 설정하고 그 주간 목표를 이루기 위한 데일리 목표를 성공시키는 것이 스프린트의 목표인데, 작업 단위를 너무 러프하게 잡다 보니 데일리 목표도 분명하지 않았고, 저게 뭐였더라? 라고 생각을 하는 시간이 더 많았다. 그것 때문인지 빨리 넘어가야 하는 파트가 있어도 오래 붙잡고 있느라 다음 진도를 나가지 못했다. 열심히 작업했지만 정작 결과물은 나오지 않은 이도저도 아니게 되어버린 상황이 초래된 것이다. 이런 안 좋은 습관을 계속 가지고 있다보면 일주일이 지나고 또 일주일이 지나도 계속 같은 상황일 게 분명하다. 오늘 홀맨님께서도 작업단위를 최대한 세세하게 쪼개라고 조언을 .. 2023. 1. 2.
Plmography 프로젝트 작업 로그 #20 - 컨텐츠 상세 페이지 작업중..(23.01.01 TIL) 이번주는 외부 API 사용에 대한 두려움을 없앨 수 있는 작업들을 많이 한 것 같다. 백엔드에서 api 를 db 에 저장하는 것 부터 시작해서, 프론트에서 api 를 호출하여 화면에 출력하는 것 까지! 오늘은 tmdb 에서 제공하는 get credits 라는 api 를 사용해서 출연진들의 리스트를 불러오고, get videos 라는 api 를 사용해서 유튜브 링크를 화면에 출력해주었다. 유튜브 영상 출력은 어제 완료했지만 복잡한 코드가 되어버려서 오늘 약간의 리팩토링을 거쳤고, 한 컴포넌트에 있었던 데이터들을 컴포넌트 4개로 분리해주었다. 진도가 많이 느리긴 한데, 일단 핵심가치 기능 먼저 구현하는 걸 최우선으로 생각해야겠다. 느리지만 굴러가는 중,, 2023. 1. 1.
Plmography 프로젝트 작업 로그 #19 - api 로 유튜브 영상 불러오기 (22.12.31 TIL) 상세 페이지에서 유튜브 링크 불러오기 작업을 진행한 오늘.. db 에 저장된 tmdbId 값을 가져오고, 그 아이디값을 프론트에서 호출하는 api 에 넣어주어서 유튜브 링크를 화면에 출력했다. 일단 apiStore 를 만들어서 api 호출문을 저장해줌. // apiStore async fetchVideo(tmdbId) { const apiBaseUrl = apiConfig.tmdbApiUrl; const apiKey = apiConfig.key; this.videoUrl = await ( await fetch(`${apiBaseUrl}/movie/${tmdbId}/videos?api_key=${apiKey}&language=ko-KR`) ).json(); this.publish(); } 그런데 db 에서.. 2022. 12. 31.
Plmography 프로젝트 작업 로그 #18 - DB 쿼리문 + 기년회 (22.12.30 TIL) 인수 테스트를 할 때, 모든 테스트는 항상 동일한 상태에서 독립적으로 동작되어야 한다. 그래서 백도어 api 로 데이터베이스를 리셋하는 걸 만들어놨지만, 리셋 후에 데이터를 밀어넣는 api 가 동작될 때 내가 의도치 않은 방향으로 동작되었다. 예를 들어, db 를 리셋해주는 api 가 동작되고 난 후 'DELETE FROM TABLE_NAME' 을 하고 다시 테이블이 생성될 때 id 값이 delete 되기 전 테이블의 마지막 번호가 이어진 상태로 생성이 되는 것이었다. 데이터 삭제 전 테이블의 id 가 1~200 이었다면, 데이터들이 삭제된 후 다시 들어갔을 때 첫 번째 컬럼의 id 가 201 부터 시작되었다. 나는 id 값에 따라 1~50 까지는 A 데이터, 51~100 까지는 B 데이터를 넣는 쿼리문.. 2022. 12. 30.
Plmography 프로젝트 작업 로그 #17 - 컨텐츠 상세 페이지 작업 (22.12.29 TIL) 오늘 오전에는 백엔드에서 백도어로 api 를 DB 로 밀어넣는 작업을 진행하고 오후부터는 프론트에서 상세 페이지 마크업을 진행했다. 전체 영화 목록을 가져오는 api 는 백엔드에서 작업해서 DB 로 넣어주었지만, 상세 페이지에서 필요한 유튜브 링크나 출연진 목록 등의 정보를 가져오는 api 는 프론트에서 호출할 예정이다. 아직 마크업 진행중인 페이지이다. 포스터를 보여주는 헤더 부분은 미리 작업해주었다. DB 에 저장된 영화 제목, 포스터, ott 플랫폼, 작품 줄거리, 개봉일 등은 백엔드에서 호출한 데이터를 출력하고 있고, 아직 사진에는 없는 감독 및 출연진과 예고편은 프론트에서 호출할 예정이다. contents/{id} 형태의 api 를 호출했을 때 나오는 JSON 파일을 DB 에 내가 원하는 방식으.. 2022. 12. 29.