애증의 리덕스도 몇 번 써보니 코드를 짜는 데엔 큰 어려움은 없는 것 같다. 다만 리듀서에서 데이터를 스테이트에 반영하는 부분이 좀 부족해 오류 발생이 잦다. 한가할 때 꼭 리덕스에 대해서 다시 공부해봐야겠다. 아니, 이게 아닌데. 오늘 한 일을 써야 하는데... 아주 그냥 의식의 흐름대로 쓰고 있다. 뷰를 잡을 때 단위가 작은 컴포넌트들부터 만들면서 시작하게 되면 처음에는 시간이 많이 걸린다는 단점이 있지만, 뒤로 갈수록 속도가 붙어 뚝딱뚝딱 조립하게 된다. 클론코딩이라 참고할 자료들이 있다는 특수성이 더해진 프로젝트이긴 하지만 말이다. 클론코딩의 장점은, 뷰를 잡고 나면 뿌듯함이 크다는 것이다. 누군가 피땀 흘려 디자인한 아이디어를, 코딩 연습이랍시고 내가 막 갖다 쓰는 게 아닌가 하는 생각도 든다. 아무튼 뷰는 세부적인 부분만 시간 날 때 조금씩 들여다보며 고쳐가면 될 것 같고, api 리스트 중 1, 2번째인 메인 페이지 전체 뉴스 목록 불러오기와 상세 페이지 개별 뉴스 내용 불러오기에 대한 코드를 짰다. 리덕스를 내가 붙이겠다고 하고 시작한 작업이었지만 axios까지 적고 나니 아차 나 혼자 너무 멀리 왔나 싶었다.
내일 할 일
일요일이라 쉬는 날이지만, 마음이 무거워서 하루종일 쉴 수는 없을 것 같다. 아직 구현하지 않은 남은 api 리스트 두 항목도 코드를 완성해봐야겠다.
대망의 클론코딩 주간이 밝았다. 미니 프로젝트 때도 너무나 짧게 느껴졌던 1주일이라는 시간 안에 어떻게 이걸 해내라는 건지는 여전히 의문이지만(그리고 심지어 이 모자란 내가 팀장만 4번째...), 아무튼 우리 조는 뉴닉을 클론코딩의 대상으로 정했다. 스코프는 나중에라도 늘릴 수 있기 때문에 일단은 좁게 잡아야 한다고 해서 메인 페이지에서 전체 기사 목록 보여주고, 카테고리별로 나눠서도 보여주고, 상세 페이지에서 기사 내용 보여주고, 검색창에서 키워드로 검색하면 검색 결과 보여주고... 로그인과 회원가입 기능은 빼고 이 정도만 구현해보는 걸로 결정했다.
깃헙 저장소를 만들었는데 왜인지 로컬 저장소와 연결하는 처음부터 난리난리가 나서 결국 밀어버리고 다시 시작했다. 프로젝트 극초반이라면 사람과 마찬가지로 저장소도 고쳐 쓰지는 말자. 이미 만들어둔 저장소에 미련이 남아 밀어버리기로 결정하기까지 시간이 다소 소요되었지만 밀고 나니 작업의 진행 속도가 붙었다.
아무리 클론코딩할 사이트를 개발자 도구로 뜯어본다고 해도 최대한 비슷하게 구현하는 것은 추가적인 노력이 필요한 것 같다. 최선을 다해 따라하는데 어째 그 모양새가 안 나온다. 그래도 오늘, 그렇게나 멀게만 느껴졌던 반응형 페이지 설정하는 방법을 우연한 기회에 알게 되어 조금 더 완성도가 높은 뷰를 제작할 수 있게 되었다. 원래 쓰던 모듈에서 뭘 더 추가적으로 설치할 필요 없이! 이것만 해도 이번 주간의 충분히 큰 수확이다. (*/ω\*) ~ ♬
내일 할 일
메인 페이지 뷰의 부족한 부분을 마저 채우고 나머지 페이지들의 뷰 잡는 작업도 시작한다. 기초 단위 컴포넌트들을 오늘 거의 만들어 놓아서 메인 페이지만큼 시간이 많이 걸릴 것 같지는 않다.
서버단에서 임시로 쓸 수 있는 api를 넘겨 주시면 연결을 해본다. (어쩌면 임시가 아닐 수도 있다)