개발일지 6주차

배운 점✏️

처음으로 백엔드와 협업을 해봤다. 배포 이후 버그를 잡는 과정에서 많은 것을 배웠다. history.push를 해도 렌더링이 되지 않아 '뭐가 문제일까?' 했는데, 비동기 작업이 이루어질 때는 모듈에서 비동기 작업이 끝난 뒤에 실행될 수 있도록 history를 인자로 받아 거기서 페이지 이동을 진행했어야 한다는 점을 까먹고 있었다.. 그리고 모달창에서 수정 버튼을 눌렀을 때 기존의 정보를 불러오는 과정에서 버튼이 눌러진 다음에 정보를 가져와야 하기 때문에 수정 상태인지를 체크하고 그때 useEffect를 사용해줘야 했다.

React.useEffect(() => {
if(update) {
  textRef.current.value = post.articleDesc;
}
},[update]);

이런 느낌으로..👩‍💻
왜인지는 모르겠지만 useEffect는 한번만 사용할 수 있다고 생각해왔는데, 콜백함수 다음에 오는 두번째 파라미터에 조건을 줘서 사용하면 전혀 다른 useEffect가 되기 때문에 여러 번 사용할 수 있다는 것을 배웠다. 두번째 파라미터에 의존성 배열이 없는 useEffect가 여러 개 들어가면 문제가 되기 때문에 이 부분은 유의해야 한다.
또, 로그인 상태가 아닐 때 코멘트가 있는 게시물을 클릭하면 흰 화면이 뜨는 오류가 발생했는데, 유저 아이디를 비교해서 자기가 쓴 글만 삭제 버튼이 뜨도록 했기 때문에, 유저 아이디 정보가 없어서 비교할 수 없는 경우에는 문제가 발생했던 것이었다. 상위 레벨에서 유저 아이디가 없느면 아예 비교를 안 하도록 해주어야 했다.

느낀 점🤔

협업은 정말 어렵다는 것을 느꼈다. 실력도 물론 중요하지만, 협업 태도가 중요한 것을 느꼈다. 꼼꼼하지 못한 팀원이 놓친 부분을 기껏 채워놨더니 머지할 때 충돌 많다고 한숨 쉬고 툴툴대는 것을 보니까 정말 화가 났었다.. 그 사람이 불필요한 코드도 많이 쓰고 난잡하게 하다 보니 알아보기도 어려워서 작업하는 데에 불편함도 많았는데.. 그런 팀원은 다시는 만나고 싶지 않지만, 나중에 회사 가서도 나랑 잘 맞는 사람들만 만날 수는 없는 일이니 ㅠㅠ 적어도 나는 그런 태도를 가지지 않아서 다행인 거 같다. 난 끝까지 완성도를 높이고 싶었는데, 그냥 대충 하고 쉬자는 마인드는 정말 마음에 안 들었다. 버그가 많은 걸 보고도 그게 필수로 해야 하는 거냐고 물어보는데 정말 싸울 뻔 했다 ㅠㅠㅋㅋㅋㅋ 프로젝트에 좀 욕심이 있는 사람이랑 함께 하고 싶다... 퓨🥲
저 사람이 백엔드랑 얘기할 때 날세워서 얘기해서 기싸움 안 하도록 중간에서 웃으면서 좋게 얘기하느라 나만 눈치보고 ㅠㅠ 여러모로 협업에서 소통은 정말 중요하고, 맡은 일은 충분히 진행할 수 있는 실력, 그리고 하나를 하더라도 제대로 마칠 수 있는 꼼꼼함이 중요하다고 느꼈다.

좋은 웹페이지 즐겨찾기