개발자
안녕하세요 현재 프론트엔드 개발자로 일 하고 있습니다. 다름이 아니라 react를 이용하여 서버와 db까지 공부하여 웹과 앱 출시까지 해보고 싶은 목표가 있는데 mern스택은 다뤄보았지만 다른 자바나 오라클, mysql 같은 언어는 다뤄보지 않았습니다. 만약 앱 출시까지 생각을 한다면 백엔드 언어를 어떤걸 선택 한 뒤 공부하고 앱 출시까지 해야할지 감이 안잡힙니다. 그리고 보통 웹과 앱을 같이 개발하여 출시한다고 하면 리액트로 웹을 개발한 뒤 기존의 리액트로 만든 코드를 기반으로 리액트 네이티브로 변환해서 앱을 개발하나요? 혼자 풀스택으로 웹 앱 개발까지 하는 과정도 조금 궁급하니다.
답변 2
인기 답변
1. 백엔드 언어 선택 - 프론트를 하고 계시니 자바스크립트를 사용하고 계시겠네요 JS 로 백엔드도 처리 가능합니다. node.js, express, nest.js 를 활용 가능합니다. 2. 웹 과 앱 출시 다양한 방법을 사용할 수 있을텐데요 웹은 react 앱은 react-native 만약 웹앱 둘다 동일한 코드로 하고싶다 그러면 웹뷰형태로 배포가 가능합니다. 3. 차이점 어떤 차이점들이 있는지 알면 좋은데요 react-native 는 하나의 코드로 IOS 와 AOS 를 동시에 개발할 수 있습니다. 다만 리액트의 컴포넌트를 그대로 사용할수는 없고 리액트네이티브로 개발된 코드는 결국 네이티브 코드로 컴파일 되기 때문에 별도로 제공되는 요소를 사용해야합니다. 배포또한 네이티브앱 배포와 동일하기때문에 변경사항이나 버전 업데이트가 있을때마다 매번 심사를 거쳐야 합니다. 심시기간이 길게는 일주일씩 걸리기도해서 이부분이 문제가 되기도합니다. 때문에 한번 심사 후 앱 출시후에는 코드푸시라는걸 사용하기도합니다. 웹뷰같은경우는 앱으로 출시되기때문에 껍데기는 네이티브이지만 그 안의 내용구성은 웹의 화면을 띄워서 보여주는것과 동일합니다 때문에 한번의 개발로 웹과 앱 둘다 구현이 가능합니다. 다만 네이티브기능(사진촬영, 기기설정 등) 이 필요한경우에는 브릿지를 만들어 네이티브코드를 변경하거나 기능구현을 해야하기때문에 안드로이드와 IOS 의 네이티브코드 지식이 일부 필요할 수 있습니다. 플러터라는 다트언어를 기반으로하는 크로스플랫폼 앱 개발 도구가 있습니다 리액트네이티브와 동일하게 하나의 코드로 둘다 출시가 가능하고 예전에 본 글로는 웹까지 가능하게 한다고 봤던것같은데 지금은 어떤지 모르겠네요 다만 새로운 언어와 프레임워크를 익혀야하기때문에 러닝커브가 좀 있을 수 있습니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
커리어리 AI 봇
GPT가 달아주는 답변입니다.
2023년 11월 13일
애플리케이션을 개발할 때 선택할 수 있는 기술 스택은 매우 다양합니다. React를 사용하는 것은 좋은 선택입니다. 웹과 모바일 앱 모두에 대해 일관된 사용자 경험을 제공하면서 개발 프로세스를 효율적으로 관리할 수 있습니다. React Native를 사용하면, 웹 애플리케이션 코드의 일부 또는 전체를 재사용하여 모바일 앱을 개발할 수 있습니다. 그러나 이것은 완벽한 솔루션이 아닙니다. 웹용 React와 모바일용 React Native 사이에는 몇 가지 중요한 차이점이 있기 때문입니다. 예를 들어, UI 컴포넌트가 다르므로 마크업과 스타일링에서 다른 접근 방식이 필요합니다. 따라서 코드 재사용을 극대화하고 효율성을 높이려면 'React + React Native' 조합을 적재적소에 활용해야 합니다. 백엔드 측면에서는 Express.js, MongoDB 및 Node.js 같은 JavaScript 기반의 기술을 계속 사용하는 것도 좋습니다(MERN 스택). 이렇게 하면 JavaScript만으로 전체 스택을 커버할 수 있기 때문에 학습 곡선이 완만하고 개발 생산성도 향상됩니다. Java, Oracle, MySQL 등을 사용하는 전통적인 백엔드 기술도 여전히 유효하지만, 프론트엔드 개발자로서의 경험과 JavaScript에 대한 이해를 바탕으로 Node.js와 같은 백엔드 기술을 배울 때가 더 효율적일 수 있습니다. 마지막으로, 혼자서 풀 스택 개발을 하려면 많은 시간과 노력이 필요하므로 계획 단계에서부터 체계적으로 접근하는 것이 중요합니다. 첫 번째 프로젝트를 시작할 때는 간단한 기능부터 시작하여 점차 복잡성을 추가하는 방식을 추천합니다. 잘 정리된 문서화와 코드 리뷰 역시 가치 있는 연습이 될 수 있습니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!