자바스크립트 오류 처리와 안전한 복구 전략
Photo by Pexels via Pixabay 서비스에서 오류는 피해야 할 예외적인 사건만이 아닙니다. 사용자가 잘못된 값을 입력하거나 네트워크가 끊기고 외부 API가 제한 시간을 넘는 상황은 일상적으로 발생합니다. 모든 오류를 하나의 catch에서 …
다양한 언어 관련 내용
Photo by Pexels via Pixabay 서비스에서 오류는 피해야 할 예외적인 사건만이 아닙니다. 사용자가 잘못된 값을 입력하거나 네트워크가 끊기고 외부 API가 제한 시간을 넘는 상황은 일상적으로 발생합니다. 모든 오류를 하나의 catch에서 …
Photo by markusspiske via Pixabay Vue 애플리케이션에서 Vue Router는 URL과 화면을 연결하는 기능을 넘어 로그인 확인, 권한 제어, 데이터 준비, 뒤로 가기 경험을 결정합니다. 라우터 가드에 모든 업무 로직을 몰아넣으면 …
Photo by tookapic via Pixabay 쿼리가 느려지면 가장 먼저 인덱스를 추가하려는 경우가 많습니다. 인덱스는 원하는 행을 빠르게 찾도록 돕지만 저장 공간을 사용하고 INSERT, UPDATE, DELETE마다 함께 관리돼야 합니다. 잘못 만든 …
Photo by Elchinator via Pixabay 자바스크립트 프로젝트가 커지면 하나의 파일에 모든 기능을 담을 수 없어 코드를 모듈로 나눕니다. ES 모듈의 import와 export는 파일 사이의 공개 계약을 표현하고 번들러가 사용하지 않는 …
Photo by MianShahzadRaza via Pixabay Vue 애플리케이션이 느려졌을 때 반응형 프레임워크 자체를 원인으로 지목하기 쉽습니다. 실제로는 너무 많은 컴포넌트 생성, 불안정한 목록 키, 큰 객체에 대한 깊은 감시, 중복 API …
Photo by yatsusimnetcojp via Pixabay 주문 수량을 차감하거나 계좌 잔액을 변경하는 작업은 여러 SQL이 모두 성공하거나 모두 취소돼야 합니다. 트랜잭션은 이 원자성을 제공하지만, 트랜잭션을 사용했다는 사실만으로 동시성 문제가 모두 해결되지는 …
Photo by Sunriseforever via Pixabay 파이썬 데코레이터는 기존 함수의 본문을 직접 고치지 않고 공통 동작을 덧붙이는 문법입니다. 실행 시간 측정, 접근 권한 검사, 재시도, 캐시, 트랜잭션 처리처럼 여러 함수에서 반복되는 …
Photo by kuszapro via Pixabay 자바스크립트에서 setTimeout을 0밀리초로 설정했는데 바로 실행되지 않거나, Promise 콜백이 타이머보다 먼저 실행되는 현상은 초보자뿐 아니라 실무 개발자도 혼동하기 쉽습니다. 자바스크립트 코드는 기본적으로 하나의 호출 스택에서 …
Photo by jamesmarkosborne via Pixabay Vue 애플리케이션이 작을 때는 부모 컴포넌트가 상태를 갖고 props와 emit으로 전달하는 방식만으로 충분합니다. 화면과 컴포넌트가 늘어나면 로그인 사용자, 장바구니, 알림처럼 멀리 떨어진 여러 화면이 공유하는 …
Photo by yeiferr via Pixabay 업무 보고서를 만들다 보면 부서별 순위, 전월 대비 증감, 누적 매출, 각 그룹의 최근 주문처럼 행을 유지하면서 집계 결과도 함께 보고 싶은 요구가 자주 생깁니다. …