FEInterview Prep

YKSS

React Labs: 뷰 트랜지션과 액티비티, 그리고 더 많은 것들

React Labs가 발표한 View Transitions API 통합과 Activity 컴포넌트는 React 생태계의 큰 변화를 예고한다. View Transitions는 페이지/상태 전환 시 브라우저 네이티브 애니메이션을 선언적으로 적용할 수 있게 해주며, Activity 컴포넌트는 비활성 상태의 UI를 메모리에 유지하면서 성능을 최적화하는 새로운 패턴을 제공한다.

2025-05-22·5분 읽기
React
원문 보기 ↗

핵심 요약

이 아티클은 React 컴포넌트와 렌더링 흐름를 실무 판단 기준으로 다시 정렬해 주는 읽기 자료입니다. React Labs가 발표한 View Transitions API 통합과 Activity 컴포넌트는 React 생태계의 큰 변화를 예고한다. View Transitions는 페이지/상태 전환 시 브라우저 네이티브 애니메이션을 선언적으로 적용할 수 있게 해주며, Activity 컴포넌트는 비활성 상태의 UI를 메모리에 유지하면서 성능을 최적화하는 새로운 패턴을 제공한다. 이는 React가 단순한 렌더링 라이브러리를 넘어 사용자 경험 전반을 다루는 프레임워크로 진화하고 있음을 보여준다.

이 아티클은 React 컴포넌트와 렌더링 흐름를 면접에서 바로 꺼낼 수 있는 답변 프레임으로 접어 두는 메모처럼 읽으면 좋습니다.

React 컴포넌트와 렌더링 흐름를 설명할 때 정의만 말하면 답변이 얕아지기 쉽습니다. View Transitions API는 DOM 변경 전후의 스냅샷을 찍어 크로스페이드, 슬라이드 등의 애니메이션을 CSS만으로 구현할 수 있게 해주는 브라우저 네이티브 API다. 실무 판단 근거와 면접 답변의 밀도를 동시에 끌어올릴 수 있습니다.

학습 포인트

면접 답변으로 연결할 학습 포인트입니다.

View Transitions API는 DOM 변경

View Transitions API는 DOM 변경 전후의 스냅샷을 찍어 크로스페이드, 슬라이드 등의 애니메이션을 CSS만으로 구현할 수 있게 해주는 브라우저 네이티브 API다. 이 포인트를 알고 있으면 비슷한 상황에서 왜 이 접근을 선택하는지까지 설명할 수 있습니다.

ViewTransitionsAPIDOM
자주 하는 오해

View Transitions API는 DOM 변경를 개념으로만 기억하고 맥락 없이 적용하면 View Transitions API는 DOM 변경 전후의 스냅샷을 찍어 크로스페이드, 슬라이드 등의 애니메이션을 CSS만으로 구현할 수 있게 해주는 브라우저 네이티브 API다. 패턴 이름만 외우고 적용 조건을 구분하지 않으면 비슷한 문제에 같은 해법을 남용하게 됩니다.

React의 <ViewTransition> 컴포넌트

React의 <ViewTransition> 컴포넌트는 React 상태 변화와 View Transitions API를 통합하여 선언적으로 전환 애니메이션을 정의할 수 있게 한다. 이 포인트를 알고 있으면 비슷한 상황에서 왜 이 접근을 선택하는지까지 설명할 수 있습니다.

ReactViewTransitionViewTransitions
자주 하는 오해

React의 <ViewTransition> 컴포넌트를 개념으로만 기억하고 맥락 없이 적용하면 React의 <ViewTransition> 컴포넌트는 React 상태 변화와 View Transitions API를 통합하여 선언적으로 전환 애니메이션을 정의할 수 있게 한다. 패턴 이름만 외우고 적용 조건을 구분하지 않으면 비슷한 문제에 같은 해법을 남용하게 됩니다.

Activity 컴포넌트는 탭이나 화면이 비활성화될

Activity 컴포넌트는 탭이나 화면이 비활성화될 때 언마운트하지 않고 숨김 상태로 유지하여 재활성화 시 빠른 복원이 가능하게 한다. 이 포인트를 알고 있으면 비슷한 상황에서 왜 이 접근을 선택하는지까지 설명할 수 있습니다.

Activity컴포넌트는탭이나화면이
자주 하는 오해

Activity 컴포넌트는 탭이나 화면이 비활성화될를 개념으로만 기억하고 맥락 없이 적용하면 Activity 컴포넌트는 탭이나 화면이 비활성화될 때 언마운트하지 않고 숨김 상태로 유지하여 재활성화 시 빠른 복원이 가능하게 한다. 패턴 이름만 외우고 적용 조건을 구분하지 않으면 비슷한 문제에 같은 해법을 남용하게 됩니다.

읽는 순서

  1. 1이론

    "React Labs: 뷰 트랜지션과 액티비티, 그리고 더 많은 것들"의 멘탈 모델과 요약을 먼저 읽고, React 컴포넌트와 렌더링 흐름와 관련된 핵심 용어 3개를 적어보세요.

  2. 2구현

    React Labs: 뷰 트랜지션과 액티비티, 그리고 더 많은 것들에서 다룬 아이디어를 작은 예제로 직접 구현하거나 기존 코드에 대입해 보면서 적용 조건을 확인하세요.

  3. 3실무

    현재 프로젝트에서 React 컴포넌트와 렌더링 흐름와 연결되는 화면이나 코드 리뷰 사례를 찾아, 어디서 같은 판단이 필요한지 정리해보세요.

  4. 4설명

    동료에게 "브라우저의 View Transitions API가 무엇이고, 기존 CSS 애니메이션과 어떻게 다른가요?"에 대한 답을 5분 안에 설명해보세요. 막히는 부분이 아직 이해가 얕은 구간입니다.

면접 연결 질문

medium브라우저의 View Transitions API가 무엇이고, 기존 CSS 애니메이션과 어떻게 다른가요?
힌트

[감점 답변] 용어 정의만 반복하거나 "React Labs: 뷰 트랜지션과 액티비티, 그리고 더 많은 것들에서 그렇게 하더라" 수준으로 답하면 감점 포인트입니다. 면접관은 개념을 외운 사람보다 판단 근거를 말하는 사람을 찾습니다. [좋은 답변] document.startViewTransition()으로 DOM 변경을 감싸면 브라우저가 변경 전후 스냅샷을 찍어 자동으로 전환 애니메이션을 처리함. 기존에는 JS로 두 상태를 동시에 렌더링해야 했던 것을 단순화. 가능하면 선택 이유, 트레이드오프, 실제로 문제가 되는 상황까지 함께 연결하세요.

mediumReact에서 컴포넌트를 언마운트하지 않고 숨겨두는 것이 왜 성능상 이점이 있나요? 어떤 경우에 이 패턴을 사용하나요?
힌트

[감점 답변] 용어 정의만 반복하거나 "React Labs: 뷰 트랜지션과 액티비티, 그리고 더 많은 것들에서 그렇게 하더라" 수준으로 답하면 감점 포인트입니다. 면접관은 개념을 외운 사람보다 판단 근거를 말하는 사람을 찾습니다. [좋은 답변] 재마운트 시 초기화 비용(API 호출, 상태 초기화) 제거. 탭 UI, 슬라이드 패널, 모달 등에서 유용. 메모리 사용량 증가라는 트레이드오프도 언급. 가능하면 선택 이유, 트레이드오프, 실제로 문제가 되는 상황까지 함께 연결하세요.

hardReact의 <ViewTransition> 컴포넌트와 관련해 실무에서 가장 먼저 점검해야 할 리스크는 무엇인가요?
힌트

[감점 답변] 용어 정의만 반복하거나 "React Labs: 뷰 트랜지션과 액티비티, 그리고 더 많은 것들에서 그렇게 하더라" 수준으로 답하면 감점 포인트입니다. 면접관은 개념을 외운 사람보다 판단 근거를 말하는 사람을 찾습니다. [좋은 답변] React의 <ViewTransition> 컴포넌트가 실패했을 때 사용자 경험, 유지보수, 성능 중 어디에서 문제가 커지는지 우선순위를 정해 설명하세요. 가능하면 선택 이유, 트레이드오프, 실제로 문제가 되는 상황까지 함께 연결하세요.

자기 점검

"View Transitions API는 DOM 변경"가 왜 중요한지 스크롤 올리지 않고 한 문장으로 설명해보세요.
ViewTransitionsAPIDOM
자주 하는 오해

"View Transitions API는 DOM 변경"를 기능 목록으로만 외우는 것. 실제로는 왜 이 접근이 필요한지와 적용 조건까지 설명해야 합니다.

React Labs: 뷰 트랜지션과 액티비티, 그리고 더 많은 것들에서 강조한 판단 기준을 실무 예시와 함께 설명해보세요.
ReactViewTransitionViewTransitions
자주 하는 오해

좋은 사례만 기억하고 실패 조건을 빼먹는 것. 실제 면접에서는 언제 위험해지는지까지 함께 말해야 합니다.