주력은 자바 웹개발이지만 다른것도 건드려 보고싶어서 이것저것 걷핥기 하다가
안드로이드로 뭐하나 만들어보자해서 퇴근후 늦은밤 애들 자는시간에 컴퓨터에 앉아서 사부작사부작 했더랬죠..
그러다 하고싶은건 많은데 레퍼런스할 사이트가 그렇게 많지가 안더라구요.. Stack Overflow에서 찾기도 쉽지 않았거든요
영어로 되어있어서 내가 원하는 질문&답을 찾기가 쉽지않더라구요.
어렵게 안드로이드로 개발을 하다가 코틀린으로 소스를 짜야 ios앱 만들때 스위프트 적응하기가 좀더 편하다고하여 자바로짠 소스들을 코틀린(코틀린으로 그냥 변환해버리면 오류가 많이 발생하여 차근차근 공부하며 변경함)으로 다시짜기 시작합니다.
그러던 도중 스위프트도 공부해야 ios앱도 만들어야하기에 갈길이 막막하던 찰나에 플러터라는 녀석을 알게됩니다.
어차피 스위프트 공부할거 플러터로 한방에 해결해보자해서 플러터를 공부하며 앱을 다시짜기 시작했습니다. 드디어 구글플레이, 앱스토어 각각 앱을 출시를 했긴했습니다.
아직 달고싶어도 못단 기능들도 많고.. 기술력이 딸리네요.
느낀점 : 플러터는 굉장히 "쓸만하다 이거 물건이다" 였습니다.
사족이지만 파이어베이스도 좋긴한데 쿼리를 조인할수없어서 데이터를 활용하여 ui노출시킬때 엄청난 고민을 혼자서해야했다는거..
그리고 푸시알림을 각 페이지별로 보내주던가 채팅방내에서 송출 후 푸시알림 클릭 시 해당 채팅방으로 가게하는 방법 및 푸시알림을 받은 상대방이 이미 동일한 채팅방에 들어와있는지 아닌지.. 등등 이거 해결하느라 수명단축이 된듯합니다.. 물론 지금도 오류들이 있는듯합니다.. ㅎ
제 나름 제일 풀기 힘들었던 작업은 현재 유저가 어느페이지를 보고있느냐 이부분을 해결하기가 많이 힘들었던거 같네요.
플러터와 파이어베이스를 이용하여 상용화하신분들의 후기좀 듣고 싶네요.
제 앱이 궁금하신분들은 "당신의번개 당번"검색하시면 됩니다.
말씀하신 것과 같은 예시라면 실시간 정보로 표시되어야 한다는 것으로 보이는데, 이런 경우라면 게시글을 작성할 때 사용자를 특정할 수 있는 유니크한 id(createdBy) 를 저장하고, 조회할 때 게시글 정보와 유저 정보를 조회하여 `조립`하여 전달합니다.
로그로써 남긴다면, 게시글을 작성한 시점의 유저이름? 계정? createdByUserName 등으로 저장하고, 사용자 정보가 업데이트 되어도 업데이트하지 않습니다.
파이어베이스가 가진 한계인듯해 보이네요(물론 장점도 많고 속도도 엄청빠르다고 알고있습니다)스택오버플로에서도 해당관련 문의글이 많은데 해결책은 그냥 각각 조회해서 백앤드(앱안에 로직적으로)에서 조합할수밖에 없다라고 하거든요..
홍길동의 게시글이 1번, 3번 등등 불특정하게 있고 다른 유저의 글들도 마찬가지로 섞여있을때 중복적으로 홍길동의 정보를 여러번 불러와야하는 비용적인문제도 생각해봤습니다.
DB 에 엑세스하는 비용이 문제라면, 캐쉬를 두고, 정보의 변동이 있을 때 교체해주고 하는 식으로 진행합니다만, 이런 사항은 딱히 Firebase 에 대한 설명이 아니라서 적절하지는 않은 것 같네요.
저도 플러터로 앱개발 독학한번 해보려고하는데 애플 개발자 계정 등록에서 막히고 있습니다. 조언좀 부탁드려요
/Vollago
플러터 ios배포는 맥os에서 플러터 프로젝트를 열고(저는 안드로이드스튜디오) 그 안에서 ios폴더에서 Xcode로 열기가 있습니다. 그렇게 실행된 Xcode에서 블로그같은거 참고하셔서 배포방법대로 하심되는데 중요한부분이 실제아이폰이랑 맥컴퓨터랑 연결해놔야해요