분류 전체보기(187)
-
[FCM] http POST push 요청 규격
FCM push interface URL POST https://fcm.googleapis.com/fcm/send header Authorization - key=서버키 Content-Type - application/json body { "to": "device id or topic", "registration_ids" : ["device id","device id"], "data": { "type": "메시지 타입", "linkTo": "이동하려는 스크린", "key": "value" }, "notification": { "body": "푸시알림 내용", "title": "푸시알림 제목" } } 💡 to / registration_ids 둘 중에 하나의 프로퍼티만 사용 가능 to : 한 개의 devi..
2021.11.17 -
[동적 계획법] 1로 만들기
다른 사람들의 풀이를 보니, 메모이제이션으로 쉽게 풀 수 있는걸 너무 복잡하게 생각한 것 같다. 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net from sys import stdin N = int(stdin.readline()) m = {1: 0} def check(no): global m if no
2021.11.14 -
웹 최적화 후기
작년 12월 연말의 어느 날. 꽤나 한가한 일정을 보내던 나는 평소 눈엣가시처럼 여기던 자체 서비스 리팩토링/최적화를 하고 싶다는 의견을 대표에게 피력했고, 1주일의 스프린트를 할당받아 레거시 코드에 대한 최적화 및 리팩토링을 진행했다. 길지 않은 시간동안 부족한 실력으로 해내려다 보니 부족한 점이 많았지만, 나름 뿌듯한 1주일의 기억으로 아직도 남아있다. 언젠간 써야지 써야지 해놓고 기록만 해뒀던 내용을 이제야 꺼내본다. 문제점 큰 문제가 3개가 있었다. 1. 번들 사이즈 무식하게 큼. 당시 자사의 서비스 웹은 CRA를 통해 제작된 페이지로, 최적화따윈 되지 않은 통짜 CSR 그 자체였다. 청크파일 용량이 총 1.8mb에 달했는데, 네트워크 환경이 느린 곳에서는 페이지 로드가 심각할 정도로 느렸다. 아..
2021.11.12 -
의미부여 하지않기
대단한 일을 하려고 하면 시작조차 하지 못한다. 가볍게 흥미로 생각나서 하는 일들이 쌓이고 쌓여 대단한 일이 되는 것이다. 최근 하는 일들이 도전의 연속이었다. 나에게는 마치 송판을 깨는 것 같은 하루하루였다. 송판을 깨면 보상으로 성취감과 자신감을 얻고 아프지도 않지만, 송판을 못 깨면 손만 아프다. 반 정도는 깨고 반 정도는 못 깼다. 다행인 건 많은 송판을 깨면서 점점 노하우가 생기는 것 같다. 나에 대해 객관적으로 인식하고, 단점이라고 생각되는 것들을 보완했다. 잘하고 있다고 생각하는 것들도 다시 한번 스스로에게 되물었다. 정말 잘하고 있는지, 잘 하고 있다고 생각하는 건지. 문득 뒤돌아보니 깨진 송판들이 잔뜩 쌓여있었다. 이것도 나름 쌓이고 보니 대단한 일이 된 것 같다.
2021.11.11 -
Husky, Lint-Staged, Storybook, Jest
도입해 본 간단한 소감을 말해보려고 한다. 1. Husky + Lint-Staged 만족도 9/10 이 둘은 한 묶음이라고 봐야 할 것 같다. 기본적으로 매 커밋마다 eslint --fix 및 타입 체크를 자동으로 해버리니 확실히 엉망인 코드가 커밋되는 일이 확 줄었다. 가끔 퇴근 직전에 lint나 type 쪽에서 걸려서 커밋 지연될 때는 좀 조급하지만, 만족도는 굉장히 높다. 나중엔 eslint외에도 테스트까지 엮어볼까 고민 중이다. 너무 무거워지려나? 2. Storybook 만족도 5/10 스토리북은 처음 써본게 아니라서 감흥이 적기도 한데, react-native 환경에서는 기존 storiesOf 문법을 써야 해서 Props추론도 안 되고... 때문에 Knobs를 붙어야 하고... 리액트 네이티브 ..
2021.11.11 -
[react-native] 테스팅 툴 변경 (enzyme -> testing-library/react-native)
enzyme 환경에서 비동기 처리 후 state변경에 대응하는 과정에서 너무 고통을 받다 보니, waitFor expectation을 지원하는 testing-library를 써야겠다는 생각이 들었다. 전환하고 나니 테스트도 원할해지고, 직관적으로 사용할 수 있는 것 같아 만족스럽다. Introduction | Testing Library React Native Testing Library is a testing library for React Native inspired testing-library.com enzyme 다 썰어버리고 심플하게 간다 testHelper/utils.tsx import React from "react"; import { fireEvent as fe, FireEventFuncti..
2021.11.11