React Native는 주요 세 개의 Thread로 실행됩니다.
Intersection Observer API로 무한 스크롤과 이미지 지연 로딩을 구현하는 방법을 알아봅니다.
2022. 4. 26.FrontendNext.js의 SSR, SSG, ISR 렌더링 전략과 서버 컴포넌트(RSC)의 동작 원리를 비교하고 상황별 선택 기준을 정리합니다.
2026. 3. 28.FrontendV8 같은 현대 JavaScript 엔진이 소스 코드를 토큰화, AST 생성, 바이트코드 변환, JIT 컴파일을 거쳐 기계어로 실행하는 과정을 단계별로 정리합니다.
2024. 11. 25.위 세 개의 Thread가 서로 통신하면서 사용자가 사용할 수 있는 화면이 만들어집니다.
세 Thread는 버스 같은 역할을 하는 브릿지를 통해 통신합니다.
새 아키텍처는 기존 브릿지를 제거하고 Native UI 메서드를 직접 제어할 수 있게 했습니다. 중간 데이터 전달에 드는 시간 소모가 없기 때문에 훨씬 빨라졌습니다.
javascriptconst container = document.createElement(‘div’);
예를 들어 container라는 변수에 createElement한 값을 할당했을 때, container를 입력하고 "."을 누르면 관련 메서드들이 바로 나옵니다. 이것 또한 C++로 초기화된 DOM 요소의 참조값을 가지고 있기 때문입니다.
정리하면 JSI는 다른 자바스크립트 엔진을 사용할 수 있게 해주며, JS Thread에서 곧바로 Native 영역의 Thread와 통신할 수 있도록 해줍니다. 브릿지의 직렬화/역직렬화 작업이 사라졌기 때문에 훨씬 더 빠른 속도를 보여줍니다. 또한 C++로 작성되었기 때문에 스마트 TV나 시계에서도 동작할 수 있어 타겟층도 더 넓힐 수 있습니다.