애드블럭 종료 후 보실 수 있습니다.

ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 앱 기획부터 출시까지(일기장) - 1 (사용 기술 정하기 및 프로젝트 생성)
    React Native 2021. 7. 21. 14:40
    728x90

    +해당 글은 MacOS, expo@42.0.0, react-native@0.63.4 버전을 바탕으로 작성되었습니다.

     

    이미 카테고리를 보면 알겠지만 가장 큰 틀은 React Native로 정한 상태로 들어간 프로젝트이다.

    하지만, 이에 대한 설명 역시 필요하다는 생각에 처음 기획을 한 단계부터 시작하려고 한다.

     

    React, React Native

     

    두 가지 모두 Facebook에서 만든 JS 라이브러리로 두 가지 중 어떤 걸 선택하는지에 대한 내 기준은 사실 한 가지이다.

     

    검색이 용이해야 하는가?

     

    이 한 가지에 따라 웹으로 프로젝트를 시작할지 앱으로 시작할지를 정하는 편이다.

    그리고 이번에 할 프로젝트의 경우 일기장의 특성상 검색이 될 일이 없었기에 React Native로 정할 수 있었다.

    이 시점에서 내가 고민한 내용은 웹 통신 없이 로컬로 이루어진 앱을 만들 것인가였다.

    나의 경우 이 프로젝트를 기점으로 다른 기능들도 추가하고 싶었기에 웹 통신을 위해 Firebase를 적용하기로 결정했다.

     

    다른 분들이 어떻게 개발 기획을 시작하는지 모르겠지만 나는 이렇게 큰 틀에서 시작해서 차근히 내려오며 세부적인 기술 스택들을 정하는 편이다.

     

    그리고 여기에 추후 확장할 생각을 가지고 있었기에 ContextAPI 대신 Redux-toolkit을 붙이기로 결정했다.

    여기까지 정한 뒤 프로젝트를 생성한다.

     

    TS는 이제 선택이 아닌 필수라고 생각이 들 정도로 많은 사람들이 이용하고 있고, TS를 적용함으로써 손해 보는 것보다 적용해서 얻는 장점이 훨씬 크다고 느끼기 때문에 TS는 필수적으로 적용하는 편이다.

     

    자 이제 일차적인 기획을 마쳤으니 이제 정말 프로젝트를 생성해보자.

     

    여기서 또 한 가지 갈림길이 생긴다.

     

    Expo, React Native CLI

    이 부분에서는 개인의 취향의 문제인데, 나 같은 경우에는 Expo의 장점을 버리는 것을 선호하지 않기 때문에 Expo를 Eject 해 프로젝트를 생성한다.

     

    npm i -g expo-cli
    
    expo init -t expo-template-bare-typescript

    해당 내용은 버전에 따라 변경될 수 있다.

     

     

    cd ForMe
    npm run ios

     

    실행 시 첫 화면

     

    이걸로 프로젝트 생성이 끝났다.

     

    다음 편에서는 오늘 생성한 프로젝트에 ESlint, Prettier, Babel, TSconfig 등의 설정을 해보도록 하자.

     

    댓글

Designed by Tistory.