GCP Firestore는 단일 문서를 1초에 약 한 번만 업데이트가 가능하기 때문에 1초에 여러번 업데이트해야 한다면 분산 카운터 기능을 넣는 것이 좋다. 각 카운터는 샤드로 이루어진 하위 컬렉션을 갖는다.컬렉션은 0 ~ (N-1)개의 문서를 생성하고 업데이트 시 하
if-else 구문에서 동일한 조건이 중복되어 있어서 발생하는 에러중복된 if-else 문 삭제수정 전 코드수정 후 코드ESLint - no-dupe-else-if
MySQL 서버에서 특정 텍스트 저장 시 에러 발생이모지(유니코드)가 포함된 텍스트라서 정상적으로 저장되지 않음 Regex를 사용하여 텍스트에서 이모지를 제거MySQL character set encoding을 utf8mb4로 변경UTF-8은 4바이트 가변 길이 인코딩
코드에 regex 패턴이 너무 길에 eslint의 max-len 설정에서 에러 검출 regex 패턴은 예외처리.eslintrc.js 에서 ignoreRegExpLiterals 추가ESLint max-leng
typescript 빌드 시 에러 발생tsc 버전이 낮아서 발생하는 에러tsc 버전 업그레이드tsc 버전 확인버전이 4.0.0 이하라면 업그레이드 하자.uninstall typescriptTypeScript error TS1005: ';' expected (II)
유일한 값이 필요할 경우 uuid를 생성하여 사용할 수 있다. uuid를 생성할 때는 중복되지 않아야 하기 때문에 여러 방법을 사용한다.npm uuidUUID (Universally Unique IDentifier)
cron은 unix 계열에서 동작하는 job scheduler로 정해진 특정 시간에 동작하여 스크립트를 실행한다.\*가 6개가 있는 경우도 있는데, 이때는 제일 처음 \*가 초(second)를 의미한다.cron wikipedia
자바스크립트로 소수점이하의 값을 가진 수를 사칙계산하다 보면 가끔 이상한 값이 나온다. 0.1+0.2 = 0.3이 되어야 하는데 계산해보면 소수점 아래로 값이 더 붙어 있다. 자바스크립트는 숫자를 부동 소수점으로 처리그러려면 10진수를 2진수로 변환해야 하는데특정 값에
특정 기간의 데이터를 추출하여 포인트 합산을 하려고 한다. 주의할 점이라면 대상이 되는 데이터가 sub collection의 데이터이다.이중 collection으로 user collection의 각 doc 마다 history collection이 있다.startDate
이전에는 var 키워드를 사용하여 변수를 선언했으나 현재는 사용하지 말라고 하고 있으며, 대신 let, const 키워드를 사용하는 것이 좋다.let : 값 변경이 가능한 변수const : 값 변경이 불가능하며 초기에 값이 부여되어야 하는 변수
Meta에서 유지 관리하는 Javascript 테스트 프레임워크npm 혹은 yarn으로 설치할 수 있다. 여기서는 npm을 사용한다.두개의 임의의 function을 생성하여 테스트 해본다.두 파라미터를 더하는 add.js 파일 생성두 파라미터를 빼는 sub.js 파일
Firebase-cloudfunction을 쓰다보면 하나의 소스를 여러 프로젝트에 deploy 해야할 수도 있다. 나같은 경우에는 production, test project가 달라서 deploy 할때마다 어떤 프로젝트를 써야 하는지 지정해줘야 하는데 여간 번거로운 일
Firefoo를 이용하여 Javascript query로 firestore data 핸들링 해보자.Admin ADK는 비동기 명령을 하기 위해 Javascript Promise를 사용하며, default run function은 async이다.Collection.add
Typescript로 작성하고 있는 프로젝트에 javascript 파일을 참조해야 하는 상황바로 사용할 수는 없고, d.ts 파일을 생성해야 하는데, 생성하는 방법은 2가지가 있음@types를 붙이면 node_modules/@types에 d.ts 파일이 생성됨types
Decentralized Application. 이더리움, 큐텀, 이오스 같은 플랫폼 코인 위에서 작동하는 탈중앙화 분산 애플리케이션으로, 간략히 분산앱이라고 함. 플랫폼 위에서 작동하는 디앱의 암호화폐는 coin이라고 하지 않고 token 이라고 구별하며 부름. DA
javascript programming language를 위한 패키지 관리자. 자바스크립트 런타임 환경 Node.js의 기본 패키지 관리자.명령줄 클라이언트, 그리고 공개 패키지와 지불 방식의 개인 패키지의 온라인 데이터베이스로 이루어져 있음.node.js만 설치하면
코틀린( Kotlin )은 2011년 7월 JetBrains사가 공개한 JVM에서 동작하는 프로그래밍 언어로서, 간결하고 실용적이며 자바코드와의 상호운용성( interoperability )를 중시한 언어.대상 플랫폼언어상의 코드 (특히 웹 애플리케이션의 백엔드)안드로
Multi-Thread로 동시 접근되는 것을 막는 개념.Thread는 class의 멤버변수의 자원에 접근할 수 있는데, 이는 멤버 변수가 heap 메모리를 사용하기 때문임. 여러 thread가 공유자원에 접근하는 경우 동기화를 해줘야 할 필요가 있어서 synchroni