실무가 어느 정도 발전한 후에야 실무의 실용성을 입증할 수 있는 이론이 모습을 갖춰감 해당 분야가 충분히 성숙해지는 시점에야 이론이 실무를 추월하게 됨 어떤 분야든 초기 단계에서는 아무것도 없이 이론을 정립하는 것보다 실무의 관찰 결과를 바탕으로 이론을 정립하는 것이 최선 대부분으 설계 원칙 및 개념 역시 이론에서 출발해 실무에 스며들기보다 실무에서 반…
1.1 자바스크립트의 동등 비교 props의 동등 비교 이에 따라 리액트 컴포넌트의 렌더링이 일어남 객체의 얕은 비교를 기반으로 이뤄짐 얕은 비교가 어떻게 작동하는지 모르면 렌더링 최적화하기 어려움 1.1.1 자바스크립트의 데이터 타입 원시 타입 boolean, null, undefined, number, string, symbol, bigint (7개)…
react-query의 쿼리에서 사용할 수 있는 option들 중에 staleTime과 gcTime의 차이에 대해서 알아보자. staleTime과 gcTime에 대한 설명은 다음과 같다. staleTime number | Infinity (optional) → 데이터가 늘 stale하다고 가정 인 경우 데이터는 절대 stale하다고 인식되지 않음 …
드디어 글또 8기의 마지막 글을 작성하게 되었다! 매번 제출 마감일이 빨리 돌아온다고 느끼면서도 끝나는 날이 많이 남았다고 생각했는데, 마침내 마지막 글을 작성할 날이 왔다. 글또 5기, 7기와 이번 8기까지 세 번 글또에 참여했다. 이번에는 7기 다짐과 내용이 비슷해 다짐글을 작성하지 않았다. 이번에도 목표했던 걸 생각해보면 이 정도이다. 몰랐던 키워드…
AWS 서비스에 대해 정리해보았다. 종류 AWS 서비스에는 다음과 같은 것들이 있다. EC2, Simple Storage Service(S3), Aurora, DynamoDb, RDS, Lambda, VPC, amplify, EBS 등 200개가 넘는 제품을 가지고 있다. 그 중에서 접해본 것들 몇 가지만 적어보려 한다. Amazon S3 (Simple …
패키지 매니저란 소프트웨어 패키지의 설치, 업데이트, 구성과 제거를 관리하는 시스템이며, 운영 체제나 프로그래밍 언어에 따라 다르고, 해당 플랫폼에 최적화된 방식으로 동작한다. 패키지 저장소에서 소프트웨어 패키지를 다운로드하고 설치하는 데 사용되고, 개발자나 관리자가 패키지를 배포하고 유지 관리할 수 있는 공간이며 소프트웨어 구성 및 관리를 간편하게 만들…
gRPC란 gRPC는 google에서 개발한 RPC(Remote Procedure Call) 프레임워크이다. RPC는 분산 시스템에서 프로시저 호출을 위한 프로토콜을 의미한다. gRPC는 Protocol Buffers라는 바이너리 직렬화 포맷을 사용해 효율적이고 경량화된 네트워크 통신을 지원하며, 대규모 분산 시스템에서 서비스 간의 통신을 구현할 때 사용…
상황 request에 bigint 타입의 값을 넣어줘야 하는 경우가 있었는데, string 타입을 bigint 타입으로 넘겨줘야할 때가 있었다. 다른 api에서 호출한 값인 string 타입의 id를 다른 api의 request에 필요한 bigint 타입의 값으로 넘겨줘야했다. 초기 시도 처음에는 BigInt()를 사용해서 형변환을 해주어 다음과 같이…
예약 서비스를 개발하면 예약 시작 시각과 종료 시각, 무료 취소 기한 등을 나타내기 위해 api로 호출한 날짜 값을 정해진 표기법으로 변환해야 할 일이 많다. api에서 호출하는 날짜는 주로 timestamp 타입으로 정의되어 있는데, grpc를 사용할 경우 google.type.TimeOfDay 타입으로 사용하기도 한다. api에서 호출하는 값이 아닌…
리액트 쿼리가 무엇인지와 장단점, 그리고 쿼리에 대해 작성해보려 한다. 리액트 쿼리란? TanStack Query 공식 문서에 따르면 리액트 쿼리는 TS/JS, React, Solid, Vue와 Svelte를 위한 강력한 비동기 상태 관리 도구이다. 리액트 쿼리의 특징 Declarative & Automatic 캐싱, 백그라운드 업데이트와 오래된 데이터를…