Offcanvas

개발자 / 검색|인터넷 / 모바일 / 소비자IT / 애플리케이션

오픈소스 자바스크립트 라이브러리 '리액트 파이버', 베타 단계 진입

2017.08.02 Paul Krill  |  InfoWorld
페이스북의 오픈소스 자바스크립트 UI 라이브러리 최신 버전인 '리액트 16(React 16)'이 베타 단계로 진입했다. 코드명 '파이버(Fiber)'로 불리는 이번 버전에서는 애니메이션과 레이아웃, 제스처 지원이 강화됐다.

NPM 모듈로 공개된 이 초기 베타 버전은 기존 앱과 호환성을 강화하는 데 초점을 맞췄다. 페이스북은 버전 16이 네이티브와 비슷한 성능을 제공한다고 주장했다. 파이버에는 다음과 같은 신기능에 추가됐다.

- 비동기 컴포넌트 렌더링을 통해 성능 향상
- 렌더 어레이 반환과 컴포넌트 오류 복구, 에러 스택 추적 가독성 개선
- 개선을 방해했던 내부 추상화 제거

페이스북은 리액트 16.x 개발이 끝나면 업그레이드에 대해 사전 동의를 받을 예정이다. 리액트 16.0 버전을 사용했다고 당장 앱을 획기적으로 빨라지지는 않는다. 리액트의 성능 향상은 반복적이고 점진적으로 이뤄진다고 페이스북은 설명했다. 베타 버전과 함께 페이스북은 개발자의 반응을 가장 기대하고 있다. 업체는 "15.x와 16.x 버전 사이의 성능 차이에 대한 개발자의 반응을 확인하는 데 특히 관심이 많다"라고 말했다.

16 버전은 맵과 셋트 컬렉션 타임에 의존하므로, 기존 브라우저와 기기는 이를 네이티브로 지원하지 않을 수 있다. 개발자는 앱 내에 코어-js나 바벨-폴리필 같은 폴리필(polyfill) 설치를 고려해야 한다. 리액트 16의 서버 랜더러는 전면 재개발돼 스트리밍 모드를 지원한다.

베타에서 변화된 점 중에는 새로운 오류 처리 기능이 포함됐다. 컴포넌트 트리의 런타인 오류를 잡아내는 '에러 바운더리(error boundaries)' 컴포넌트가 추가돼 이를 기록하고 펄백 UI를 보여준다. 기존에는 런타임 에러가 리액트를 장애 상태로 만들어 알 수 없는 경고를 보여주곤 했다.

스케줄링과 라이프사이클에도 변화가 많다. 이제 ReactDOM.render()과 ReactDOM.unstable_renderSubtreeIntoContainer() 메소드는 라이프사이클 메소드로부터 호출될 때 'null'을 반환한다. 패키징 작업을 위해 react/lib/*나 react-dom/lib/* 명령을 사용할 필요도 없어졌다. 애드온 관련해서는 react-addons-perf 성능 툴이 더는 리액트 16 내에서 실행되지 않는다. 다음 버전에서 비슷한 기능이 지원될 가능성도 있다. ciokr@idg.co.kr
 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.