profile
⏰ Good things take time
태그 목록
전체보기 (176)next.js(25)React(24)자바스크립트(18)JavaScript(13)리덕스(12)Spring(12)redux(12)타입스크립트(11)리액트(11)정보처리기사(11)백준(9)typescript(9)python(8)파이썬(8)SSR(7)Approuter(6)React Hooks(6)nextjs(5)git(5)프로그래머스(5)github(5)코딩 테스트(4)CS(4)tech-interview(4)알고리즘(4)computer science(4)streaming(4)자료구조(4)zustand(3)MacOS(3)Database(3)error(3)frontend(3)상태 관리(3)middleware(3)Java(3)webpack(3)network(3)EdgeRuntime(2)mutation(2)ES6(2)MSW(2)sql(2)revalidation(2)branch(2)CSR(2)교차 출처 리소스 공유(2)구조 분해 할당(2)성능 최적화(2)컨테이너(2)Metadata(2)serveractions(2)상태관리(2)자료 구조(2)JSON WEB TOKEN(2)JDBC(2)Cache(2)Hash Table(2)Suspense(2)react native(2)cors(2)Vercel(2)deployment(2)datafetching(2)useMemo(2)webdev(2)useRef(2)스프링(2)ssg(2)웹 성능(2)rendering(2)타입 별칭(1)git rebase(1)Async Logic(1)라이브러리(1)type inference(1)redux thunk(1)redux saga(1)번들 최적화(1)merge(1)브라우저 렌더링(1)Knapsack Algorithm(1)소수 구하기(1)Type Aliases(1)cookies(1)Encrypted-Storage(1)stack(1)queue(1)servercomponents(1)Route Segment Options(1)git pull(1)process.env(1)REST(1)최대공약수(1)lazyloading(1)면접을 위한 CS 전공지식 노트(1)세션(1)쿠키(1)errorhandling(1)프로미스(1)First-class Function(1)코딩테스트(1)junit(1)optimization(1)BOM(1)객체(1)async-storage(1)네트워크 요청(1)Component Streaming(1)Web Development(1)Ducks pattern(1)Class Component(1)Zulu(1)errorBoundary(1)프론트엔드 개발환경(1)DP(1)해시 테이블(1)브라우저 객체 모델(1)라우팅(1)useRouter(1)MVC(1)프론트엔드(1)프로토타입(1)2024 KAKAO INTERNSHIP(1)콜백 함수(1)데이터 패칭(1)dequeue(1)react styling(1)git stash pop(1)await(1)서버(1)useEffect(1)skeletonui(1)Client Router Cache(1)Xcode(1)문서 객체 모델(1)searchParams(1)antialiasing(1)(1)기본 타입(1)git conflict(1)React Server Component(1)Bubble Sort(1)Insertion Sort(1)Merge sort(1)Quick Sort(1)Selection Sort(1)Spread(1)async(1)비동기(1)node.js(1)Fine Grained Reactivity(1)검색(1)class(1)SOLID(1)네트워크(1)리액트 훅(1)react hook(1)git stash(1)바벨(1)웹 스토리지(1)store(1)리듀서(1)클래스형 컴포넌트(1)모던 자바스크립트(1)fsa(1)Deque(1)Suspense Streaming(1)dev-server(1)리액트 네이티브(1)Diikstra Algorithm(1)Prettier(1)Debouncing(1)reducer(1)프론트엔드 개발 환경(1)layout(1)next/image(1)DFS BFS(1)환경 설정(1)에라토스테네스의 체(1)env(1)Generic(1)Redix Sort(1)action(1)CI/CD(1)react testing library(1)DBMS(1)useNavigation(1)REST API(1)json(1)tanstackQuery(1)moduleResolution(1)Intergration Test Code(1)LoadingUI(1)baekjoon(1)클로저(1)Datagrid(1)array APIs(1)optimisticupdate(1)타입 추론(1)일급 함수(1)일급 객체(1)interface(1)인터페이스(1)build(1)coding test(1)async/await(1)pnpm(1)리액트 쿼리(1)zsh(1)first class object(1)react-query(1)통합 테스트 코드(1)local storage(1)제네릭(1)데이터베이스(1)스토어(1)서버 컴포넌트(1)useContext(1)useReducer(1)함수(1)vite(1)this(1)FGR(1)Code Formatter(1)DOM(1)M:1(1)event bubbling(1)웹 개발(1)ServerState(1)LIS(1)API Mocking(1)CSS(1)RouteHandlers(1)Parallel Routes(1)useCallback(1)Heap Sort(1)생명주기 함수(1)Context API(1)냅색 알고리즘(1)메타데이터(1)Intercepting Routes(1)Big-O 표기법(1)생성자 함수(1)Operating System(1)template(1)Page Streaming(1)기본 설정(1)spring mvc(1)유클리드 호제법(1)클래스(1)명령어(1)params(1)로컬 스토리지(1)스택(1)array(1)monorepo(1)키패드 누르기(1)webpack dev server(1)실행 컨텍스트(1)servlet(1)자동 로그인(1)jest(1)redux-actions(1)fsd(1)LCA(1)node_modules(1)useLocation(1)reactquery(1)Export data to Excel(1)액션 생성자(1)db(1)seo(1)Binary Search(1)persist(1)OpenJDK(1)덕스 패턴(1)이벤트 버블링(1)babel(1)event delegation(1)BuildStrategy(1)@next/font(1)Map(1)타입 단언(1)CRUD(1)Type Compatibility(1)webdevelopment(1)(1)이벤트 캡처링(1)useMutation(1)Throttling(1)깃허브(1)enums(1)시간 복잡도(1)컴포넌트 최적화(1)code_splitting(1)bitmask(1)운영체제(1)프로토타입 체인(1)devops(1).gitignore(1)boj(1)algorithm(1)rsc(1)data structure(1)closure(1)JPA(1)MyBatis(1)set(1)이넘(1)stash(1)sass loader(1)도커(1)session(1)container(1)세션 스토리지(1)event capturing(1)OS(1)자바스크립트 동작 원리(1)터미널(1)useSearchParams(1)routing(1)React.memo(1)server side rendering(1)스로틀링(1)Immer(1)type assertion(1)JSON Server(1)비구조화 할당(1)object(1)generateMetadata(1)페이지 이동(1)mui(1)app router(1)이벤트 위임(1)page router(1)hydration(1)hooks(1)union type(1)웹팩(1)promise(1)디바운싱(1)TROUBLESHOOTING(1)Build Tool(1)programmers(1)terminal(1)data fetching(1)Styling(1)API(1)link(1)frontendarchitecture(1)Mockoon(1)타입 호환(1)카카오 인턴(1)createRef(1)
post-thumbnail

Next.js 환경 변수 & 설정

Next.js에서 환경 변수(Environment Variables)는단순 설정값이 아니라 보안, 배포, 환경 분리를 담당하는 핵심 요소이다.특히 Next.js는 Server와 Client가 함께 존재하기 때문에환경 변수의 사용 범위를 명확히 구분해야 한다.Next.j

2026년 3월 26일
·
0개의 댓글
·
post-thumbnail

Next.js 배포 (Deployment): Vercel, 환경변수, 빌드까지 한 번에

Next.js 배포는 단순히 서버에 올리는 과정이 아니라 빌드, 최적화, 환경 분리, 실행까지 포함된 과정이다. 1. Vercel 배포 Next.js는 Vercel에서 가장 쉽게 배포할 수 있다. 배포 흐름 GitHub에 코드 push Vercel에서 프로젝트 import 자동 빌드 배포 완료 (URL 생성) 특징 Next.js와 높은 호환성 S...

2026년 3월 26일
·
0개의 댓글
·
post-thumbnail

Next.js 메타데이터 & SEO 완벽 정리

웹 서비스에서 SEO(Search Engine Optimization)는검색 엔진 노출과 유입에 직접적인 영향을 준다.Next.js(App Router 기준)는 Metadata API를 통해SEO 설정을 매우 간단하고 강력하게 관리할 수 있다.이 글에서는 다음 3가지를

2026년 3월 25일
·
0개의 댓글
·
post-thumbnail

Next.js 최적화 (next/image, next/font, 번들 최적화)

Next.js는 기본적으로 다양한 성능 최적화 기능을 내장하고 있다.특히 이미지, 폰트, 번들 크기 최적화는 실제 서비스에서 로딩 속도와 UX에 큰 영향을 준다.이 글에서는 다음 3가지를 핵심으로 정리한다:next/imagenext/font번들 최적화 개념일반 <

2026년 3월 25일
·
0개의 댓글
·
post-thumbnail

Next.js에서 Edge Runtime은 언제 쓰는 걸까? (Node.js와 비교 정리)

Next.js App Router를 사용하다 보면 다음과 같은 문장을 자주 보게 된다."Middleware는 Edge Runtime에서 실행된다"여기서 자연스럽게 이런 의문이 생긴다.👉 Edge Runtime은 정확히 무엇이고, 언제 사용해야 할까?이 글에서는 Edg

2026년 3월 23일
·
0개의 댓글
·
post-thumbnail

Middleware (Auth, Redirect, Edge Runtime)

Next.js App Router를 사용하다 보면사용자가 페이지에 진입하기 전에 공통 로직을 처리해야 하는 경우가 자주 발생한다.예를 들어:로그인 여부 확인 (인증)특정 페이지 접근 제한요청 로깅조건에 따른 리다이렉트이런 로직을 페이지나 API마다 반복 구현하면 코드

2026년 3월 23일
·
0개의 댓글
·
post-thumbnail

Route Handlers 정리: API vs Server Actions 선택 기준

Next.js App Router를 사용하면서 서버 로직을 처리하는 방법은 크게 두 가지가 있다.Route Handlers (API Routes)Server Actions두 방식 모두 서버에서 실행되지만,👉 사용 목적과 구조가 다르기 때문에 구분해서 이해하는 것이 중

2026년 3월 22일
·
0개의 댓글
·
post-thumbnail

Next.js 캐싱 전략 (Cache & Revalidation)

Next.js App Router를 사용하다 보면 이런 상황을 자주 겪게 된다."데이터를 바꿨는데 왜 화면이 그대로지?""왜 어떤 요청은 다시 안 나가지?""revalidate를 했는데 왜 안 바뀌지?"이런 문제의 대부분은👉 Next.js의 캐싱 구조를 정확히 이해하

2026년 3월 19일
·
0개의 댓글
·
post-thumbnail

데이터 변경을 처리하는 방법: Server Actions 정리

👉 Next.js 13+에서 추가된 핵심 기능으로,👉 클라이언트 → 서버 데이터 변경(Mutation)을 단순하게 처리할 수 있다.기존에는 데이터 변경을 위해 API Route를 따로 만들어야 했지만,Server Actions를 사용하면 컴포넌트에서 직접 서버 로직

2026년 3월 19일
·
0개의 댓글
·
post-thumbnail

UX를 완성하는 Loading / Error 처리 방법

사용자 경험(UX)을 크게 좌우하는 요소 중 하나는 로딩 상태와 에러 처리 UI이다.특히 Next.js(App Router)에서는 이를 파일 단위로 구조화하여 매우 직관적으로 관리할 수 있다.처음에는 단순한 보조 UI라고 생각했지만, 직접 적용해보면서Streaming만

2026년 3월 19일
·
0개의 댓글
·
post-thumbnail

Layout & Template 구조 (App Router)

Next.js 13부터 도입된 App Router에서는 기존 Page Router와 달리애플리케이션의 UI를 페이지가 아닌 Layout 중심으로 설계한다.이 글에서는 다음 내용을 정리한다.layout.tsxtemplate.tsxNested Layout 구조공통 UI 관

2026년 3월 18일
·
0개의 댓글
·
post-thumbnail

Webpack Dev Server란?

Webpack Dev Server 웹팩 데브 서버(Webpack Dev Server)는 개발 과정에서 사용하는 개발용 서버로, 빌드 대상 파일이 변경되면 매번 웹팩 명령어를 다시 실행하지 않아도 코드 변경 후 저장 시 자동으로 빌드하고 브라우저를 새로고침하여 변경 내

2026년 3월 11일
·
0개의 댓글
·
post-thumbnail

Parallel Routes

Next.js App Router에서는 Parallel Routes라는 기능을 통해하나의 레이아웃에서 여러 개의 라우트를 동시에 렌더링할 수 있습니다.이를 통해 복잡한 UI 구조를 더 유연하게 구성할 수 있습니다.대표적인 예:Dashboard LayoutSidebar

2026년 3월 9일
·
0개의 댓글
·
post-thumbnail

Intercepting Routes

Next.js App Router에서는 Intercepting Routes라는 기능을 통해 현재 페이지를 유지한 채 다른 라우트를 가로채서(intercept) UI로 표시할 수 있습니다. 대표적으로 모달 라우팅(modal routing) 구현에 사용됩니다. 예를 들

2026년 3월 9일
·
0개의 댓글
·
post-thumbnail

스트리밍 (Streaming)

Next.js를 공부하면서 인상 깊었던 부분은 서버 컴포넌트 기반의 데이터 페칭과 Streaming 구조였다.기존 SSR의 한계를 어떻게 보완하는지, 그리고 React 18의 Suspense와 어떻게 연결되는지 정리해본다.SSR(Server Side Rendering)

2026년 2월 25일
·
0개의 댓글
·
post-thumbnail

클라이언트 라우터 캐시 (Client Router Cache)

클라이언트 라우터 캐시는 브라우저 측에 저장되는 캐시로, Next.js에서 페이지 이동을 보다 효율적으로 처리하기 위해 일부 데이터를 보관하는 기술이다.이 캐시는 한 번 접속한 페이지의 공통 레이아웃 컴포넌트와 서버 컴포넌트 데이터(RSC Payload)를 브라우저에

2026년 2월 25일
·
0개의 댓글
·
post-thumbnail

라우트 세그먼트 옵션 (Route Segment Options)

Next.js 앱에서 모든 페이지를 Static 페이지로 설정하여 풀 라우트 캐시(Full Route Cache)를 최대한 활용하고자 할 때, 페이지를 구성하는 모든 컴포넌트들을 일일이 점검해야 한다.동적 함수(searchParams, headers, cookies)를

2026년 2월 25일
·
0개의 댓글
·
post-thumbnail

Next.js App Router 라우팅 정리

Next.js 13부터 도입된 App Router는 기존 Page Router와 유사하면서도, 서버 컴포넌트 기반으로 더 유연한 구조를 제공한다.이번 글에서는 App Router의 기본 라우팅 방식과 Query String, URL 파라미터 사용 방법을 정리해본다.Ne

2026년 2월 22일
·
0개의 댓글
·
post-thumbnail

React Server Components(RSC) vs Server-Side Rendering(SSR) 비교

React Server Components(RSC)를 공부하면서기존 React의 데이터 페칭 방식과 무엇이 다른지, 그리고 SSR과는 어떤 차이가 있는지 정리해보았습니다. 기존 리액트에서는 데이터를 가져오는 방식이 주로 두 가지였습니다.API 요청 수는 감소하지만 컴

2026년 2월 19일
·
0개의 댓글
·

Refresh Token이 간헐적으로 실패하는 이유 — Promise 공유 패턴으로 Race Condition 해결하기

문제의 시작: 간헐적 로그아웃 운영 중인 서비스에서 간헐적으로 사용자가 강제 로그아웃되는 현상이 발생했다. 매번 그런 건 아니고, 한번씩 불규칙하게 발생하는 종류의 버그였다. 로그를 확인해보면 refresh token 갱신이 실패하면서 로그아웃 처리가 되고 있었다.

2026년 2월 13일
·
0개의 댓글
·