리액트 네이티브

React Native
리액트 네이티브
React-icon.svg
개발자페이스북 및 커뮤니티
초기 릴리즈2015년 3월 26일, 7년 전(2015-03-26)[1]
안정된 릴리스
2022년 3월 30일, 4개월 전(2022년 3월 30일)
저장소https://github.com/facebook/react-native
기입처JavaScript, Java, C++, Objective-C, Python
플랫폼Android, Android TV, iOS, macOS, tvOS, Web, Windows, UWPVR
유형응용 프로그램 프레임워크
면허증.MIT 라이선스
웹 사이트reactnative.dev

React Native는 Meta Platforms, Inc.[2]에서 만든 오픈 소스 UI 소프트웨어 프레임워크입니다.개발자가 네이티브 플랫폼 [10]기능과 함께 React 프레임워크를 사용할 수 있도록 함으로써 안드로이드,[3][4] 안드로이드 TV,[5] iOS,[4] macOS,[6] tvOS,[7] ,[8] 윈도[6]UWP용[9] 애플리케이션을 개발하는 데 사용됩니다.오큘러스에서는 [11]가상현실 애플리케이션 개발에도 활용되고 있다.

역사

2012년 마크 주커버그는 "회사로서 우리가 저지른 가장 큰 실수는 [12][13]네이티브가 아닌 HTML에 너무 많은 돈을 걸었다는 것이다"라고 말했다.페이스북 모바일 버전에 HTML5를 사용하면 데이터가 느리게 [14]검색되는 애플리케이션이 불안정해졌습니다.그는 페이스북이 곧 더 나은 모바일 경험을 제공할 것이라고 약속했다.

Facebook 내에서 Jordan Walke는 백그라운드 JavaScript 스레드에서 iOS용 UI 요소를 생성하는 방법을 찾았고, 이것이 React 프레임워크의 기반이 되었다.그들은 이 [15]기술네이티브 앱을 구축할 수 있도록 이 프로토타입을 완성하기 위해 내부 해커톤을 조직하기로 결정했다.

수개월간의 개발 끝에 2015년 페이스북은 리액트 자바스크립트 구성을 위한 첫 번째 버전을 출시했다.Christopher Cedeau는 테크니컬 [16]토크에서 Facebook이 이미 Group App과 Ads Manager [17]App을 위해 React Native를 사용하고 있다고 설명했다.

실행

React Native의 작동 원리는 React Native가 Virtual DOM을 통해 DOM을 조작하지 않는다는 점을 제외하고 React와 거의 동일합니다.엔드 디바이스에서 직접 백그라운드프로세스(개발자가 작성한 JavaScript를 해석)로 실행되며 비동기일괄처리[18][19]브릿지를 통해 직렬화된 데이터를 통해 네이티브 플랫폼과 통신합니다.

React 구성 요소는 React의 선언적 UI 패러다임 JavaScript를 통해 기존 네이티브 코드를 랩하고 네이티브 API와 상호 작용합니다.

React Native 스타일링의 구문은 CSS와 비슷하지만 HTML 또는 [20]CSS는 사용하지 않습니다.대신 JavaScript 스레드로부터의 메시지가 네이티브뷰 조작에 사용됩니다.React Native의 경우 개발자는 Java 또는 Kotlin(안드로이드용), Objective-C 또는 Swift(iOS용), C++/Win(윈용) 등의 대상 플랫폼 언어로 네이티브 코드를 작성해야 합니다.Windows [clarification needed]10의 경우 RT 또는 C#.

Microsoft는 React Native for Windows와 React Native for MacOS를 구축 및 유지합니다.

Hello World의 예

React Native의 Hello, World 프로그램은 다음과 같습니다.

수입품 { AppRegistry, 본문 } 부터 '아카타리'; 수입품 * ~하듯이 반응 부터 '실패';  컨스턴트 Hello World App = () => {   돌아가다 < >본문>안녕 세계!</텍스트>; }  수출. 체납 Hello World App;  AppRegistry.레지스터 컴포넌트('헬로월드', () => Hello World App); 

「 」를 참조해 주세요.

레퍼런스

  1. ^ "React Native: Bringing modern web techniques to mobile". 26 March 2015.
  2. ^ "Chapter 1. What Is React Native?". oreilly.com. O’Reilly Media, Inc. Retrieved 30 July 2020.
  3. ^ "Android Release for React Native". 14 September 2015.
  4. ^ a b Shankland, Stephen (March 29, 2018). "Mozilla's radical open-source move helped rewrite rules of tech". CNET. Retrieved May 11, 2022.
  5. ^ "Building For TV Devices · React Native". reactnative.dev. Retrieved 2020-10-02.
  6. ^ a b "React Native for Windows + macOS · Build native Windows & macOS apps with Javascript and React". microsoft.github.io. Retrieved 2020-10-02.
  7. ^ "React Native for Apple TV". React Native for Apple TV. Retrieved 2020-10-02.
  8. ^ "React Native for Web". Retrieved 2019-11-06.
  9. ^ Windows Apps Team (April 13, 2016). "React Native on the Universal Windows Platform". blogs.windows.com. Retrieved 2016-11-06.
  10. ^ "Out-of-Tree Platforms". reactnative.dev. Facebook, Inc. Retrieved 30 July 2020.
  11. ^ "React Native in H2 2021 · React Native". reactnative.dev. Retrieved 2021-08-20.
  12. ^ "Zuckerberg's Biggest Mistake? 'Betting on HTML5'". Mashable. Retrieved 7 April 2018.
  13. ^ Zuckerberg, Mark (2012-09-12). "Fireside Chat With Facebook Founder and CEO Mark Zuckerberg". TechCrunch (interview). Retrieved 2021-08-16.{{cite web}}: CS1 maint :url-status (링크)
  14. ^ Warren, Christina. "Zuckerberg's Biggest Mistake? 'Betting on HTML5'". Mashable. Retrieved 2020-10-29.
  15. ^ "A short Story about React Native". Retrieved 16 January 2018.
  16. ^ Christopher, Chedeau. "A Deep Dive into React Native". YouTube. Retrieved 16 January 2018.
  17. ^ "React Native: Bringing modern web techniques to mobile". 26 March 2015.
  18. ^ "Bridging in React Native". 14 October 2015. Retrieved 16 January 2018.
  19. ^ "How we build React Native app: 7 things which save your development time. Part 2". Retrieved 2019-11-06.
  20. ^ "React Native Style". Retrieved 24 February 2021.