본문 바로가기

Tech30

Flutter - Node js - FCM으로 서버에서 푸시 보내보기 개인앱이나 회사 서비스를 만들다보면 채팅, 마케팅 메시지 목적으로 푸시 메시지를 보내야하는 경우가 있습니다. [본 포스팅은 Flutter 프로젝트에 firebase 등록 및 설정이 완료되었다는 가정에서 작성되었습니다 :) ] 등록 안하신 분들은 등록을 먼저 진행해주세요 Flutter 앱에 Firebase 추가 Flutter 앱에 Firebase 추가plat_iosplat_android 이 가이드에 따라 Flutter 앱에 Firebase 제품을 추가하세요. 참고: Firebase는 Flutter와 같은 프레임워크를 최선의 노력으로 지원합니다. 이러한 제품 추가는 Fireba firebase.google.com 아이폰은 추가로 Push Notification 쓸 수 있게 설정이 필요합니다.(까다로운 아이폰.. 2021. 5. 10.
데이터 베이스(DB) 다국어 지원, 어떻게 구현하는게 좋을까? Flutter 스터디에서 다양한 프로젝트를 하다가, 이번엔 판을 좀 키워보았습니다. Flutter에 제공되는 정보를 Next.js를 써서 웹페이지로도 제공을 하고, 한글/영어로 서비스 제공이 가능하도록 하는 것이죠. Flutter 소스 내에서 사용되는 언어들에 대해서는 easy_localization 패키지를 써서 진행을 했지만, 서비스에서 제공되는 데이터 중 서버(자체서버) api를 통해 오는 데이터들의 다국어 지원을 어떻게 할지에 대해서는 고민이 필요했습니다. 물론 최근에 번역 시스템이 아주 잘 되어있어서 번역 패키지를 쓰는 것도 좋겠지만, 아직 그 '번역체'의 느낌을 저버릴 수가 없더라구요. 좀 더 확실한 글로벌 서비스 제공을 위해 번거롭지만 컨텐츠들을 직접 번역하기로 마음먹었습니다. 구글링과 함께.. 2021. 4. 23.
[CSS] Reset VS Normalize (개념, 차이, 장단점) 웹 프론트엔드 개발을 하다보면, 처음에 개발 환경 세팅하고, 프로젝트 만들고, 기본 프로젝트의 css 파일을 다 지운 후에 반복적으로 하는 작업이 바로 css 초기화. 저는 대부분 Reset.css를 써왔고 대부분 그렇게 사용하는 것으로 알고 있습니다. meyerweb.com/eric/tools/css/reset/ CSS Tools: Reset CSS CSS Tools: Reset CSS The goal of a reset stylesheet is to reduce browser inconsistencies in things like default line heights, margins and font sizes of headings, and so on. The general reasoning behin.. 2021. 4. 15.
더 찾기 귀찮아서 정리하는 정규식 표현 Javascript, Python, Dart 및 각종 에디터에서 사용하는 정규식을 매번 인터넷 검색해서 찾다가 찾더라도 내 블로그에서 찾아야지 하는 마음으로 정리해봅니다. 정규식 쓰는 방법 /이 사이에 쓰는 내용은 정규식 패턴이다/ 03:30 처럼 시간 (gr[ea]y) => grey, gray 둘 다 검색 (gr[ae]y[^a-z]) => grey, gray 검색하되 뒤에 아무것도 안붙어있는 단어 검색 정량 - 해당 문자 뒤에 붙여서 쓰며 {}를 붙여 쓸 수 있음 ? 없거나 있거나 (zero or one) * 없거나 있거나 많거나 (zero or more) + 하나 또는 많이 (one or more) {n} n번 반복 {min,} 최소 {min,max} 최소, 그리고 최대 a? => a가 없거나 있거나.. 2021. 3. 31.
[Flutter로 만든]끝말잇기 말잇봇 - 채팅형 끝말잇기 게임 플러터 스터디 5기(StarD)가 어제 성황리에(?) 마무리되었습니다. 2번째로 만든 앱을 출시해보게 되었네요. 개발 과정과 후기 공유 차 글을 작성합니다. [플레이스토어] 끝말잇기 말잇봇 - 안녕 난 말잇봇! 넌 말잇못! - Google Play 앱 - 국립국어원 표준국어 단어를 학습한 말잇봇을 이겨보세요 - 신조어(개방형 사전 우리말샘 사전)도 이용 가능합니다 현재 끝말잇기 사용 가능한 단어들을 수집 중에 있습니다. 게임 플레이 중 play.google.com 똑똑한 끝말잇기 AI '말잇봇'을 이겨보세요! - 국립국어원 표준국어 단어를 학습한 말잇봇을 이겨보세요 - 신조어(개방형 사전 우리말샘 사전)도 이용 가능합니다 [네이밍/로고] Figma로 끄적끄적 만들어본 로고입니다. 전 앱을 기획할 때 전체.. 2021. 3. 23.
[flutter] Isolate, Compute. 화면 안버벅이고 큰 이벤트 실행하기 플러터(다트)는 단일 쓰레드를 사용합니다. 즉, 사람으로 치면 한 사람이 화면도 그리고, 데이터 통신도 수행하고, 유저의 행동에 따른 반응도 해주고, 그에 필요한 다양한 수학적 연산들도 수행하죠! 참 대단한 사람이죠? 하지만 한손으로 하늘을 가리지 못하듯, 점점 더 이 사람에게 많은 것을 요구할 경우 발생할 수 있는 문제가 있습니다. 바로 동시에 할 수 있는 일은 한정되어있다는거죠! 플러터는 60프레임, 혹은 기기에 따라 120프레임의 퍼포먼스를 목표로 하고 있습니다. 개발자로써는 범용앱이라면 항상 최저 디바이스에서도 원할하게 수행되는 앱을 만들 수 있어야 한다고 생각하기 때문에 60프레임에서 무난하게 돌아가는 앱이 되어야겠죠? 이 경우 플러터가 매 16ms마다 한번씩 업데이트를 해야하는데, 바꿔 말하면.. 2021. 3. 16.