WORK/개발일지

앱과 리액트 네이티브(React Native)

뜔비(tul_bi) 2023. 1. 2. 21:39

앱 서비스를 만든다는 건, 클라이언트와 서버 모두 만들어야 한다는 것을 의미합니다.

 

클라이언트(프런트)는 지금 우리가 보는 화면으로 웹 사이트로 따지면 크롬 브라우저나 사파리, 익스플로러가 해당되겠고 앱으로 따지면 휴대폰에 많이 존재하는 어플, 즉 앱 자체가 해당됩니다.

 

서버(백엔드)는 사람들이 원하는 데이터가 있는 곳이고, 원하는 데이터를 요청하면 이에 응답해주는 곳이기도 합니다. 앱, 즉 클라이언트에서 원하는 데이터가 있을 때마다 서버에 요청하고, 응답 데이터를 받아 사용자에게 보여주는 것은 앱 서비스 뿐만 아니라 웹 사이트를 만들때도 똑같습니다.

 

📱 앱 = 사용자들이 보는 앱 화면을 만들고 필요한 데이터를 요청할 수 있는 서버를 만드는 것

 

🤖 '안드로이드' 와  🍎 'iOS(아이폰)'

안드로이드는 Java&Kotlin이라는 기술로 개발이 가능하고, iOS는 Swift라는 기술로 개발이 가능하다.

각기 다른 개발 기술 언어가 필요한 이유는, 안드로이드와 iOS가 실행되기 위한 OS 즉, 환경이 다르기 때문이다. 그래서 보통 회사에서 안드로이드와 iOS 개발자를 각각 뽑는 모습을 볼 수 있다.

 

그런데 Java&Kotlin 또는 Swift 언어는 다소 높은 러닝커브가 존재하며, 심지어 이 중 하나를 공부했다고 하더라도 우리는 안드로이드 또는 iOS 앱 중 "하나"만! 개발이 가능하다. 그렇다면 이 두 가지를 동시에 할 수 있는 것은 어떤 것들이 있을까?

 

👉🏻 안드로이드, iOS 각각 개발 하는 건 네이티브 앱! 웹 사이트를 만들고 껍데기를 씌워 간단히 배포하는 건 하이브리드 앱! 그리고 크로스 플랫폼 앱 개발네이티브 앱과 하이브리드 앱 개발의 장점들을 모아 놓은 것이다.

 

🪐 리액트 네이티브(React Native)

크로스 플랫폼 앱 개발 언어 중 하나이다. 페이스북에서 만들고 지원하고 있으며, 사용자 인터페이스(UI)를 만드는 데에 특화되어 있는 리액트(React.js) 라이브러리/프레임워크 기반으로 앱을 제작하는 기술이다. 리액트(React.js) 라이브러리/프레임워크를 기반으로 다루는 기술인 만큼, "자바스크립트"로 개발 가능하다. (js = javascript 줄임말)

 

페이스북, 인스타그램, 에어비엔비, 테슬라 등..

 

이밖에도 많은 회사들이 사용하고 있으며, 리액트 기반의 앱 개발 기술인 만큼 형성되어 있는 커뮤니티가 상당하다. 즉, 많은 사람들이 이미 다양한 경험을 거쳐서 리액트 네이티브를 사용해 많은 앱을 만들었다는 뜻이다. 😉

 

*모든 글의 출저: 스파르타 코딩 클럽