앱 서비스, 웹 사이트 클라이언트에서 원하는 데이터가 있을 때마다 서버에 요청하고, 응답 데이터를 받아 사용자에게 보여준다.(데이터를 주고받는 관계)
클라이언트(프론트)
클라이언트는 사용자가 보는 화면이다. 웹 사이트로 따지면 크롬 브라우저나 사파리, 익스플로러가 해당되겠고 앱으로 따지면 휴대폰에 많이 존재하는 어플, 즉 앱 자체가 해당된다.
서버(백앤드)
서버는 사용자가 원하는 데이터가 있는 곳이고, 원하는 데이터를 요청하면 이에 응답해주는 곳이기도 합니다.
앱과 리액트 네이티브
앱 개발이라고 하면 단연 "안드로이드"와 "iOS(아이폰)" 두 가지가 떠오른다. 안드로이드는 Java&Kotlin이라는 기술로 개발이 가능하고, iOS는 Swift라는 기술로 개발이 가능하다. 각기 다른 개발 기술 언어가 필요한 이유는, 안드로이드와 iOS가 실행되기 위한 OS, 즉 환경이 다르기 때문이다.
그래서 보통 회사에서 안드로이드와 iOS 개발자를 각각 뽑는 모습을 볼 수 있다.
안드로이드와 ISO
안드로이드
Java&Kotlin이라는 기술로 개발이 가능하다.
iOS(아이폰)
wift라는 기술로 개발이 가능하다.
네이티브 앱
안드로이드, iOS 각각 개발하는 것!
하이브리드 앱
웹 사이트를 만들고 껍데기를 씌워 간단히 배포하는 것!
크로스 플랫폼 앱
앱 크로스 플랫폼 앱 개발은 네이티브 앱과 하이브리드 앱 개발의 장점들을 모아놨다.
리액트 네이티브(React Native)
크로스 플랫폼 앱 개발 언어 중 하나이다.
페이스북에서 만들고 지원하고 있으며, 사용자 인터페이스(UI)를 만드는 데에 특화되어 있는 리액트(React.js) 라이브러리/프레임워크 기반으로 앱을 제작하는 기술이다. 리액트(React.js) 라이브러리/프레임워크를 기반으로 다루는 기술인 만큼, "자바스크립트"로 개발 가능하다. (js = javascript 줄임말)