웹 개발자가 React Native를 좋아하는 5가지 이유
게시 됨: 2016-11-24React Native는 현대 앱 개발의 미래입니다.
점점 더 많은 웹 개발자가 앱 구축 생태계에 참여하고 있습니다. stateofjs.com에 따르면 개발자의 78%는 블록에 있는 새로운 아이인 React Native에 대해 배우는 데 관심이 있습니다. 또한 React Native는 92%의 높은 이자율 을 기록하고 있습니다.
아시다시피 Cordova 및 PhoneGap과 같은 몇 가지 다른 다중 플랫폼 솔루션이 있지만 가격이 있습니다. React Native처럼 네이티브 코드를 실행합니다.
그렇다면 React Native가 특별한 이유는 무엇입니까? 다음은 주로 웹 개발자가 관심을 가질 상위 5가지 목록입니다.
1. 네이티브 애플리케이션을 구축할 수 있습니다.
이름 자체에서 짐작할 수 있듯이 React Native를 사용하면 기본 애플리케이션을 빌드할 수 있습니다. Cordova 및 Sencha Touch 또는 Ionic과 같은 다른 유형의 프레임워크는 하이브리드 솔루션이며, 이를 사용하면 기본 앱의 모양과 느낌을 결코 얻을 수 없습니다.
중요한 것은 유창하거나 가속화된 스크롤, 화면 간 전환, 완전히 사용자 정의된 애니메이션, 사용자 정의 탐색 등입니다. 웹에서 React로 작업한 적이 있다면 집에 있는 것처럼 편안함을 느낄 수 있습니다.
JavaScript를 작성하고 있지만 구성 요소를 렌더링하는 데 웹 보기를 사용하고 있지 않습니다. React Native는 실제 기본 구성 요소 를 렌더링하며 모든 플랫폼에 인식 가능한 모양과 느낌을 제공하는 활동 표시기와 같은 플랫폼별 구성 요소를 사용할 수 있습니다. 이전에 하이브리드 기술의 주요 문제는 임베디드 브라우저가 제대로 작동하지 않는다는 것이었습니다. 최적화되지 않았고 성능도 좋지 않았습니다.
기술적인 관점에서 볼 때 RN의 가장 큰 경쟁자는 Xamarin 으로 Mac, Windows, iOS, Android, Windows Phone 등 다양한 플랫폼용 앱을 개발할 수 있습니다. 네이티브 스크립트 도 같은 방식으로 작동합니다.
예를 들어 Xamarin은 깔끔한 IDE(VS)가 있기 때문에 훌륭하지만 C#을 사용해야 합니다. 웹 개발자이기 때문에 C#을 잘 모르고 JavaScript에 더 익숙할 것입니다.
React Native는 JS 자체로 코드를 작성하기 때문에 JavaScript와 유사하게 작동합니다(예: Angular.js를 사용할 수도 있음). 또한 JS는 ES6 및 ES7과 같은 표준으로 놀라울 정도로 업그레이드되었습니다. JS 커뮤니티가 얼마나 크고 강력한지는 말할 것도 없습니다.
어떻게 작동하는지 배울 수 있도록 이 강연을 React Native에 대한 소개로 추천합니다.
https://www.youtube.com/watch?v=KVZ-P-ZI6W4
또는 독자라면 이 블로그 게시물을 읽어보십시오.
2. 배우기 쉽다
항상 좋은 일이죠, 그렇죠? React Native의 가장 큰 장점이기도 합니다. 동화책처럼 가독성이 좋아서 한 눈에 봐도 알 수 있어요. 다른 프레임워크를 사용하면 일반적으로 긴 개념 목록을 배워야 합니다. 시간이 지남에 따라 Facebook은 공식 React Native 문서를 크게 개선했습니다. 최근에 기본 섹션을 추가했습니다. 이 섹션은 간단한 집중 과정에서 알아야 할 모든 것을 설명하기 때문에 RN을 배울 수 있는 정말 깔끔하고 영리한 방법입니다.
JavaScript를 알고 있다면 운이 좋은 것입니다. React Native는 ES6을 사용합니다. 아직도 ES6가 익숙하지 않으신가요? 다음은 JavaScript 개발을 훨씬 쉽게 만들어줄 몇 가지 ES6 사양을 설명하는 자습서입니다. 기본적으로 HTML과 유사한 JSX를 사용합니다. 스타일은 CSS와 매우 유사하지만 별도의 단일 파일이 아닌 구성 요소 내에 작성됩니다. 그 접근 방식에는 장단점이 있으며 이에 대해 많은 기사가 작성되었습니다. 따라서 실제로 알아야 할 모든 것은 React 입니다.
반응은 쉽습니다. "View"라는 div 구성 요소와 단순히 "Text"라는 다른 텍스트 구성 요소를 상상해보십시오. 이것은 본질적으로 React Native와 React.js 간의 연결입니다.
스타일 지정은 구성 요소 자체에 포함되어 있고 별도의 파일에 포함되어 있지 않다는 점을 제외하면 CSS와 매우 유사합니다.
정말 쉽죠? 처음에는 React 수명 주기, 상태 및 소품에 대해 배워야 합니다. 저를 믿으십시오. 거기에서 모든 것이 내리막입니다.
3. 친숙한 환경 제공
웹 개발자로서 이미 알고 있는 많은 도구를 여전히 사용할 수 있습니다. Chrome, Web Storm, VS Code 또는 Sublime용 DevTool을 사용하는 경우 계속 사용하거나 원하는 편집기를 사용할 수 있습니다. 결국, 당신은 여전히 HTML, CSS 및 JavaScript를 실질적으로 작성하고 있습니다.
Webpack, Grunt 또는 Gulp를 사용하여 코드를 트랜스파일하는 데 익숙합니까? React Native가 알아서 해줍니다. RN이 Babel 트랜스파일러를 사용하기 때문에 ES6 및 Object Spread와 같은 일부 멋진 ES7 기능을 즉시 사용할 수 있습니다.
익숙하지 않더라도 확실히 더 쉽게 작업할 수 있는 또 다른 요소는 Facebook이 개발자에게 React Native를 위한 일류 개발 환경을 제공하기 위해 구축하고 있는 통합 개발 환경(IDE)인 Nuclide입니다.
익숙한 흐름이 여전히 작동한다는 점에 유의하는 것이 중요합니다. 웹에서 작업하는 것처럼 index.html을 업데이트하면 전체 페이지가 업데이트됩니다. 핫 리로딩을 사용하면 코드를 쉽게 새로고침하고 앱의 변경 사항을 즉시 확인할 수 있습니다. 웹에서처럼. 더 좋은 점은 시뮬레이터에서 CMD+D를 누르면 선택할 수 있는 여러 옵션이 있다는 것입니다.
4. 활발한 커뮤니티가 있습니다.
이것은 모두 새롭고 미지의 영역이기 때문에 많은 개발자가 다른 사람들에게 유용한 것을 만들고 React Native의 진정한 잠재력을 공개하기 위해 최선을 다하고 있습니다.
Facebook 그룹 은 훌륭한 개요를 제공하고 관련 뉴스에 대해 계속 게시하므로 해당 그룹을 팔로우하는 경우 중요한 정보를 놓칠 가능성이 거의 없습니다. 가장 크고 가장 활동적인 그룹은 도구 키트, 구성 요소, 새로운 앱에 대한 매일 게시물을 제공하고 기본적인 질문에서 심각한 개발자 문제에 이르기까지 React Native에 대한 질문에 대한 답변을 제공하는 React Native Community입니다. 이것은 정보를 수집하고 무언가를 배우는 좋은 장소가 됩니다.
독자라면 Medium 도 React Native에 대해 호황을 누리고 있습니다. 몇 가지 출판물이 있지만 가장 좋은 방법은 React Native 태그를 따르는 것입니다. 문제가 발생하면 스택 오버플로를 방문하여 문제에 대한 수많은 조언과 솔루션을 찾을 수 있습니다. 일반적으로 프로그래밍의 관점에서 프로그래머는 누군가가 해결책을 찾은 것을 찾는 데 다소 익숙합니다. React Native에 문제가 있는 경우 다른 사람이 작성한 코드를 찾아 즉시 재사용할 수 있습니다.
훌륭한 Github 커뮤니티의 예로는 뛰어난 ReactJS와 실제로 매우 유사한 React Native 커뮤니티가 있습니다.
React Native를 중심으로 이벤트도 많이 진행되고 있습니다. 가장 인기 있는 이벤트는 Meetup을 통해 구성됩니다. 이러한 이벤트는 몇 주에 한 번씩 전 세계에서 발생합니다. 가장 큰 것은 확실히 React Native San Francisco이지만 이 글을 쓰는 시점에서 가장 최근의 것은 New York에 있었습니다. 100명 이상의 활성 React Native 개발자를 호스팅했습니다. 또한 올해 1000명이 참가한 React Europe과 같은 컨퍼런스도 많이 있습니다!
전반적으로 React Native는 GitHub에서 40,000개 이상의 별 과 9,000개 이상의 포크 를 보유하고 있습니다. 그것에 전념하는 Facebook 그룹에는 7K 회원 이 있으며 매일 많은 새로운 기사가 작성됩니다.
5. 미래를 위한 크로스 플랫폼 프레임워크 제공
'크로스 플랫폼'이라는 단어는 내 입에 나쁜 맛을 남기곤 했습니다. 그러나 나를 믿으십시오. 이것은 다릅니다. React Native를 사용하면 진정한 네이티브 모바일 앱을 구축할 수 없습니다. 모든 플랫폼을 위한 앱을 만들고 있습니다. 모든 플랫폼을 말하는 것은 iOS와 Android만을 의미하는 것이 아닙니다. 스마트 TV, Xbox 콘솔, Windows 장치, 모든 종류의 스마트 워치, 자동차, VR 헤드셋, 심지어 냉장고까지 말입니다.
스마트폰 자체가 강력한 기계가 된 것은 말할 것도 없습니다. 전체 "모바일 퍼스트" 패러다임 이후로 시대가 정말 바뀌었고 일부 개발자는 심지어 " 네이티브 퍼스트 "에 대해 이야기하고 있습니다.
이 기술은 여전히 새롭지만 현재 우수한 React Native 앱이 있습니다. 아직도 그것이 미래의 틀이라는 확신이 들지 않습니까? 이 프레젠테이션을 보고 모든 것이 제자리에 맞춰질 것입니다.
해봐! 모바일 개발자가 될 때입니다
설명했듯이 이 프레임워크는 웹 개발자뿐만 아니라 실제로 잠재력이 있습니다. 전체 개발 논리는 현대적인 원칙을 사용합니다. 워크플로는 효율적이고 쉽고 빠르게 배울 수 있습니다. 점점 더 많은 플랫폼에서 이를 사용하고 있으며 이 모든 것이 시작에 불과합니다. 새로운 React Native 개발자가 문제를 해결하고 빠르게 성장하는 미래의 프레임워크에 새로운 아이디어를 제공하는 것입니다.