본문 바로가기

코드잇32

[위클리 페이퍼] React Query가 만들어진 이유와 React Query를 사용할 때 얻게 되는 이점 React Query가 만들어진 이유  상태에는 클라이언트 상태와 서버 상태가 있다. 클라이언트 상태는 리액트 훅 등을 이용한 로컬 상태관리, 전역 상태 라이브러리를 이용한 상태관리를 예로 들 수 있다. 서버 상태는 서버로부터 받아오는 데이터와 관련된 상태인데, 리액트 쿼리없이 받아오면 API 호출을 하면서 로딩상태같은 별도의 추가 리소스를 투입해야 한다. 하지만 리액트 쿼리는 서버 상태를 효율적으로 관리하기 위해 만들어졌기 때문에, 사용함으로써 아래와 같은 이점을 얻을 수 있다.서버 상태 복잡성 해결: 서버 상태는 클라이언트 상태와는 달리 비동기적이고 자주 변할 수 있다. 그래서 useState나 useEffect 훅으로만 관리하면 코드 복잡성이 올라가게 된다. 이럴 때 리액트 쿼리를 사용하면 이러한 .. 2024. 11. 8.
[위클리페이퍼] 서버 상태와 클라이언트 상태의 차이 서버 상태 (Server state) 서버 상태란 사용자 정보, API 응답, 데이터베이스에 저장된 데이터 등 서버나 외부 데이터 소스에 저장된 데이터를 뜻한다. 서버 상태에는 다음과 같은 특징이 있다.지속성: 서버 상태는 일반적으로 세션 간에 지속성이 유지된다. 사용자가 애플리케이션을 종료해도 데이터는 서버에 남는다는 뜻이다. 그래서 쇼핑몰의 재고 상태나 사용자가 올린 글 등은 계속 남아있게 된다.일관성: 서버에서 데이터가 관리되므로 데이터의 일관성이 유지된다. 이런 특징은 동일 데이터를 여러 클라이언트가 참조해도 동일한 최신 상태의 문서를 참조하고 편집이 가능하다.API 호출: 클라이언트는 서버 상태를 가져오기 위해 API 호출을 하고, 이 과정을 통해 데이터 접근이나 업데이트가 가능해진다. 그러나 .. 2024. 11. 7.
[2차 협업프로젝트 TIL] 9일차 회고 9일차 진행상황 11월 5일까지 진행되는 프로젝트기간에서 마무리단계에 접어들었다. 모든 기능들을 구현하고, 발견된 개선사항과 버그들을 해결하는 중이다. 오늘 팀원들과 데일리스크럼을 진행하며 공유한 사항은 다음과 같다.발표 및 발표자료 준비 역할 분담신규 PR 확인 및 Merge개선사항 공유 및 현재 새로 발견된 버그 공유추가적인 기능에 대한 공유팀원분들이 모두 1일차부터 빠르게 준비하여 시간을 많이 할애하여 달려와주신 덕분에 9일차에 마무리단계를 거치며 지금까지 만든 프로젝트를 돌아볼 수 있게 되었다. 아직 마감까지는 시간이 충분하여 개선사항들을 반영하고 부가적인 기능도 적용해볼 수 있을 것 같다. 9일차에 배운 점 💡 코드를 작은 단위로 분해해보는 연습의 필요성이번에 프로젝트를 진행하면서 기존에 하던.. 2024. 10. 30.
[2차 협업프로젝트 TIL] 4일차 회고 4일차 진행상황 오늘 팀원들과 데일리스크럼을 하며 공유한 사항은 다음과 같다.신규 PR 확인 및 merge기존 작업사항에 개선사항 반영 및 신규 개선사항 반영 작업페이지 공통컴포넌트 및 페이지 작업 진행오늘 최종 merge 후 결과물을 보니 상당히 많이 진행됐음을 알 수 있었다. 팀원분들이 적극적으로 의견을 공유하고, 사소한 부분이더라도 적극적으로 소통하는 팀을 원했는데, 많이 도와주셔서 팀원분들에게 감사함을 느낀다. 4일차에 배운 점 💡 무한스크롤 적용지금까지 무한스크롤을 적용하는 것을 배우며 자바스크립트 코드로만 사용해봤지 리액트에 적용해본 적은 없었다. 이번에 내가 맡은 페이지도 무한스크롤이 들어있어서 공부해보고 싶어서 고른 페이지이긴 하지만, 막상 만들어보니 잘 선택했다는 생각이 들었다.useE.. 2024. 10. 24.
[2차 협업프로젝트 TIL] 3일차 회고 3일차 진행상황 쉽지 않겠다고 느꼈는데 정말 쉽지 않다. 새로 하는 역할, 새로 구현해보는 기능과 레이아웃 등, 익숙하면 속도라도 빠르겠는데 처음 접해보는 부분만 골라서 구현부터 쉽지 않다. 3일차에 팀원들과 공유한 사항은 아래와 같다.PR사항 확인 및 Merge개선사항 공유페이지 역할 분담 후 작업 시작각 작업 시 우선순위 및 세부 일정 공유오늘 데일리스크럼을 진행하면서 페이지 작업으로 진입 전 역할을 분담하고, 이것저것 개선사항을 포함하여 공유를 했는데, 팀원분들 모두 현재 프로젝트 진행속도가 전반적으로 빠르다고 느끼고 계셨고, 정리가 안된 채로 작업에 임하고 있었다. 그래서 속도를 늦추고 멘토님의 의견 반영작업을 하면서 앞으로 해야 할 작업을 노션에 별도로 각자 정리하는 시간을 가지고, 내일까지 작.. 2024. 10. 23.
[2차 협업프로젝트 TIL] 2일차 회고 2일차 진행상황 2일차에는 현재까지의 진행도를 공유하고 PR 사항의 개선작업을 진행하며 다음 작업을 준비했다. 오늘 공유한 내용은 다음과 같다.공용 컴포넌트 작업상황 공유작업이 완료된 컴포넌트 PR 및 코드리뷰다음 작업내용 공유이제 본격적으로 공용 컴포넌트를 활용해서 새 작업에 나갈 준비가 다 된 것 같다. 2일차에 배운 점 💡 팀원을 통한 새로운 코드의 배움오랜만에 코드리뷰를 진행하면서 팀원분들에게 내가 자주 써보지 않은 코드를 보면서 새로운 구현방식에 대해 배울 수 있었다. 예를 들어, 회원가입 및 로그인을 할 때의 쿠키설정, 쿠키관리 등은 지금까지 라이브러리의 도움을 받아 자동으로 해결하였는데, 현재 프로젝트에서는 다른 팀원님이 직접 구현중이어서 그 코드들을 보며 쿠키관리 과정이 어떻게 진행되는지.. 2024. 10. 22.