며칠전 리액트 네이티브 공식 블로그에 올라온 글에서 제 눈에 들어오는 문구 몇가지 옮겨봅니다.
Native Experience
Our top priority for React Native is to match the expectations people have for each platform.
…(중략)… By using platform primitives, React Native apps are also able to stay up-to-date with design and behavior changes from new releases of Android and iOS.
리액트 네이티브의 네비게이션 모듈에 대해 얘기했던 글에도 얘기 했듯이 각 플랫폼 primitives는 최대한 사용(존중)해야지 그걸 흉내내는건 한계가 있다고 봅니다. (react-navigation도 설마 플랫폼의 navigation을 쓰고 있는 구조로 바뀐건 아니겠죠? ㅎㅎ)
Massive Scale
Hundreds of screens in the Facebook app are implemented with React Native.
이미 페이스북앱의 수백개의 스크린이 RN인줄은 몰랐네요.
Developer Velocity
We often hear from teams that adopting React Native significantly improved their development velocity.
이거 정말 무시 못하죠. iOS, Android 여러 디바이스에 모두 동시에 실행해 놓고 코드 수정하면 새로고침 없이 바로 화면에 반영되는건 예정 앱 개발할 때랑 비교하면 정말 놀라운 발전이죠.
Declarative UI
We don’t believe in deploying the exact same user interface on every platform, we believe in exposing each platform’s unique capabilities with the same declarative programming model. Our declarative programming model is React.
hook이 나오기 전에는 선억적 UI가 뭔지 감이 잘 안왔는데 hook을 본겨적으로 사용하면서 선언적 UI가 뭔지 어떤점이 좋은지 크게 느끼고 있습니다. 웹/모바일/데스크탑 등 다양한 플랫폼에서 동작하는 UI를 만들 때 리액트라는 동일한 방식으로 만들어 갈 수 있다는 건 큰 매력입니다. "Learn once, use everywhere"라는 표현이 좀 진부해보이지만 React의 장점을 잘 나타내는 단어이기도 하죠.