안녕하세요, 고딕이라고 합니다. 실은 글로 무엇인가를 따로 정리하는 것은 시간 낭비라고 생각해서 안 하려 했습니다만, 글로 표현하는 게 전체 학습 내용을 구조화시키고 상기하는 데 유익하기 때문에 이번에 내용을 좀 정리해보려 합니다.
이번에 제가 만들 앱은 일정관리 캘린더 앱입니다. ios 앱으로 만들 예정이고, 왜 ios로 만드느냐 물으신다면, 안드로이드에 비해 ios 앱 출시가 어렵기 때문이라고 답할 수 있습니다. 시장에서 어려운 기술은 돈이 되니까 시도하는 겁니다.
자 그럼, 그걸 위해서 무엇을 사용하느냐? 우선 Reactnative(이하 'RN')를 사용할 겁니다. 이유? 는 간단합니다. RN은 자바스크립트 기반 라이브러리로, 말도 안 되게, 자바스크립트로 앱을 만들 수 있습니다. 고로, 자바스크립트만 좀 알고 있다면 앱을 만들 수 있습니다. 물론, 퍼포먼스를 좋게 하기 위해서, 또는 최적화를 제대로 하기 위해서는 RN이 좋지 않을 수도 있겠습니다만, 애당초 사용자가 많을 거라는 기대는 하지 않고 있고, 소규모 앱을 많이 만드는 것이 목적이기 때문에 RN을 쓸 겁니다.
또, Firebase를 이용해서 Backend를 구축할 수 있겠습니다만, 전 MongoDB와 MongoDB Atlas를 이용해 Backend 데이터를 만들고, 추후에 그 데이터를 관리하는 Go 언어 기반의 서버를 구성해서 AWS의 Virtual computer(용어가 따로 있었는데 기억이 나지 않습니다)에 둘 겁니다.
그럼 전체 데이터는 이런 식으로 흘러 가겠죠. 앱을 통해 사용자가 데이터를 요청합니다. 그러면 AWS의 Go 기반 서버에서 MongoDB의 데이터를 처리하여 해당 사용자에게 다시 데이터를 반환하는 거죠. 간단합니다.
자 그럼, 원래는 RN 사용법 정리와 RN calendar 사용법 정리가 필요할 텐데, 저는 과감하게 MongoDB부터 정리할 겁니다. 제가 당장 해결해야 할 부분이 거기 있거든요. 하핫! 궁금하신 분들은 다음 글에서 봅시다.