
React Server Components(RSC)를 공부하면서기존 React의 데이터 페칭 방식과 무엇이 다른지, 그리고 SSR과는 어떤 차이가 있는지 정리해보았습니다. 기존 리액트에서는 데이터를 가져오는 방식이 주로 두 가지였습니다.API 요청 수는 감소하지만 컴
문제의 시작: 간헐적 로그아웃 운영 중인 서비스에서 간헐적으로 사용자가 강제 로그아웃되는 현상이 발생했다. 매번 그런 건 아니고, 한번씩 불규칙하게 발생하는 종류의 버그였다. 로그를 확인해보면 refresh token 갱신이 실패하면서 로그아웃 처리가 되고 있었다.
프로젝트를 진행하던 중, PNPM workspace 기반 폴리레포 환경에서 내부 UI 라이브러리를 사용하는 구조에서 반복적인 모듈 해석 오류를 겪었다. 단순히 “빌드를 안 해서 생긴 에러”처럼 보였지만, 실제로는 UI 패키지를 어떤 방식으로 사용하는 구조인지가 명확히

🌐 네트워크 기초 정리1️⃣ 네트워크란?네트워크(Network) 는 여러 장치들이 서로 연결되어 리소스를 공유하는 구조를 말한다.노드(Node): 네트워크에 연결된 장치→ 서버, 컴퓨터, 라우터, 스위치 등링크(Link): 노드와 노드를 연결하는 통로→ 유선(케이블)

React Query에서 useMutation은 서버의 데이터를 변경(Create, Update, Delete) 할 때 사용하는 핵심 훅이다.주로 사용자 입력에 따라 서버 상태를 변경하고, 그 결과를 클라이언트 상태와 동기화하는 역할을 한다.useMutation은 다음

구글 코랩: 구글이 무료로 제공하는 파이썬 개발 환경구글 코랩에서 프로그램을 노트북(.ipynb)라는 파일에 작성 및 관리하며, 노트북은 구글 드라이브에 저장작성한 노트북을 열면 구글 코랩의 인스턴스 실행( 인스턴스: 클라우드상의 가상 서버)노트북에서 파이썬 스크립트를
stateful session: 사용자 상태를 전부 서버에서 관리하고 특정 세션 쿠키를 사용해서 이 세션을 해당 클라이언트와 연결→ 초기 구현 단계에서는 사용하기 쉽지만 규모가 커지면 복잡도 증가예를 들어, 로그인 성공 시 웰컴 페이지를 렌더링해야 한다고 가정할 때사용
기능 분할 설계(Feature-Sliced Design, FSD)레이어, 슬라이스, 세그먼트의 세 가지 개념으로 구분레이어레이어는 최상위 디렉토리이자 애플리케이션 분해의 첫 번째 단계각 레이어에는 고유한 책임 영역이 존재app - 프로바이더, 라우터, 전역 스타일, 전
사용하지 않는 프로퍼티를 바꿔도 리렌더링이 일어나지 않는 방법많은 컴포넌트들이 불필요하게 리렌더링됨에 따라 앱이 버벅거리며 느려지는 현상 발생→ useMemo, useCallback, React.memo를 써서 최적화할 수 있지만, 근본적인 해결책은 아님(이러한 방법들

불변성을 유지하면서 가변처럼 상태를 바꿀 수 있게 해주는 도구draft는 프록시 객체원본은 변하지 않고새로운 불변 객체를 생성

상태를 새로 고침하거나 앱을 닫았다가 다시 열어도 상태를 유지할 수 있게 해주는 기능persist 미들웨어 옵션으로 partialize 속성을 전달예) context 내부에 위치 정보 이외에도 유저 정보나 설정 값 등이 들어가 있을 수 있는데, 이때 position만

① 스토어 내부에 비동기 함수 정의 상태 관련 로직이 한 곳에 집중 상태 변경 흐름이 캡슐화 컴포넌트가 심플② 비동기 로직을 외부에서 호출, 내부에서 상태만 관리 상태 업데이트와 API 호출 분리 복잡한 로직도 관리 용이 API 함수 재

큰 파일을 여러 개의 조각으로 잘게 쪼개어 연속적으로 전송하는 기술먼저 도착하는 컴포넌트만 화면에 렌더링하고, 아직 도착하지 않은 컴포넌트는 스켈레톤 UI나 로딩 UI 등을 활용해서사용자에게 아직 로딩이 완료되지 않았다는 점을 명시적으로 보여줌스트리밍은 Dynamic

검색어에 해당하는 도서 아이템의 정보를 가져오는 코드를 작성하는 도중, 빌드시 타입 오류로 인해 다음과 같은 에러가 발생했다.참고로 useSearchParams는 현재 URL의 query string을 읽을 수 있게 해주는 Client Component 훅이다.awai

React에서 렌더링되는 과정과 Next에서 렌더링되는 과정을 살펴보면 다음과 같은 차이가 있다.HTML과 JS파일을 한꺼번에 보내고, 클라이언트에서 JS코드를 통해 웹 화면을 렌더링한다.Pre-rendering된 HTML을 클라이언트에 전송그 이후에 번들링된 Reac

디바운싱은 프로그래밍에서 많이 사용되는 개념으로, 주로 이벤트가 너무 빈번하게 발생하는 것을 최소화하기 위해 사용한다.자주 일어나는 이벤트를 감당하지 않고 일정 시간동안 이벤트가 일어나지 않으면 마지막 이벤트만 처리하는 방식이다.예를 들어, 사용자가 입력창에 글자를 입

React Query React Query는 서버에서 가져온 데이터를 웹 브라우저 앱에서 사용하기 쉽게 도와주는 기술로 데이터 가져오기, 캐싱, 동기화, 서버 쪽 데이터 업데이트 등을 쉽게 만들어 주는 상태 관리 라이브러리이다. DB에서 가져온 데이터를 클라이언트에

1) 컴포넌트 기반 아키텍처 컴포넌트 기반 아키텍처는 웹 애플리케이션의 복잡한 UI를 재사용 가능한 단위로 분할하는 방식을 말한다. 컴포넌트는 자체적으로 상태와 속성을 가지고 있으며, 독립적으로 작동한다. 각 컴포넌트는 특정 기능이나 UI의 한 부분을 책임진다.컴포넌

fatal: Need to specify how to reconcile divergent branches.git pull을 하려고 하니 fatal: Need to specify how to reconcile divergent branches. 오류가 발생했다.직역하자면

Git Stash는 새로운 브랜치에서 저장하기 전에 다른 브랜치로 이동할 때 사용한다.즉, 공식적으로 커밋하고 싶지는 않은데 다른 브랜치로 이동해야 할 때 사용한다.수정한 것을 커밋하지 않은 채로 다른 브랜치로 이동하려고 하면아래와 같은 에러 메시지가 발생하고, 다른