앱 개발 4

서버리스(serverless) 장점

요새 대세인 AWS Amplify (+ AppSync, DataStore)는 서버리스 기술을 이용한 것이다. 서버리스란 말 그대로 물리적인 서버가 존재하지 않는 것이며, 다음과 같은 장점이 있다. 하나의 언어만 필요 예컨데 AWS Amplifiy와 같은 툴을 사용하면, JavaScript만으로도 훌륭한 백앤드를 포함한 scalable application을 만들 수 있다. 적은 코드 자체 제공하는 함수를 사용함으로써 코드의 양을 줄이고 전체적인 복잡도를 낮출 수 있다. 난이도는 쉬워지고, 에러는 적어지고, 협업 시 유리해진다. 서버 관리 불필요 서버를 따로 구해서 유지할 필요가 없다. 확장성 서버리스의 가장 큰 장점 중 하나다. 갑자기 사용자가 폭발하더라도 서버와 데이터베이스가 알아서 이에 맞게 확장되기..

앱 개발 2021.03.01

[TIL] Expo로 앱개발 1 - 구글 로그인 폼 만들기

Expo에서는 expo-google-sign-in을 이용해 구글 로그인 기능을 구현할 수 있다. 먼저 아래 코드를 터미널에 입력하여 설치를 한다. expo install expo-google-sign-in 웹 상에 이를 이용하는 manual이 여럿 있지만, 이쪽 세상은 반년만 지나도 많은 것이 바뀌기 때문에 지금은 제대로 되지 않는 것들이 많다. 결국 조금이라도 편하고자 guide 등을 찾아보는 것 보다는, 위 링크 즉 공식 documenation을 참고하는게 가장 좋다는 것을 다시금 느낀다. 다음으로는 구글 Firebase에 project을 만들어야 한다. 요금제를 주의하자. console.firebase.google.com/ 이후 인증을 위한 Oauth 2.0 client id를 만들어야 하는데, E..

앱 개발 2020.10.28

React Native 와 Flutter 중 뭘 고를까?

Facebook에서 만든 React Native(RN)과 Google에서 만든 Flutter 모두 (2개 이상의 플랫폼에서 사용이 가능한) 크로스 플랫폼 framework이다. 각각의 장단점에 대해 간단히 살펴보면, Flutter가 유리한 경우 1. 꼭 Javascript를 사용하지 않아도 되는 경우, 혹은 이미 Kotlin이나 Swift를 사용해본 경우 (둘 다 Flutter의 언어인 Dart와 유사하다) 2. 예쁘고 부드러운 UI가 젤 중요한 경우. 3. 결과물을 떠나서, 상대적으로 쉽고 빠르게 개발하는게 필요한 경우 4. 안드로이드와 IOS 두 곳에서 정말 완벽하게 똑같이 실행되길 원하는 경우 React Native가 유리한 경우 1. 이미 Javascript, 특히 React.js에 익숙한 경우...

앱 개발 2020.10.26