개발지식44 자바스크립트 async await 사용법 자바스크립트에서 비동기 처리를 다룰 때 가장 직관적이고 널리 쓰이는 방법이 바로 async await입니다. 과거의 콜백 함수나 프로미스(Promise)의 복잡한 체이닝 방식에서 벗어나, 동기식 코드처럼 읽기 쉽고 간결하게 비동기 로직을 짤 수 있도록 도와주는 문법입니다. 오늘은 자바스크립트 async await 사용법의 기초부터 실전 예제까지 확실하게 정리해 보겠습니다.1. async await 개념과 필요성자바스크립트는 싱글 스레드로 작동하기 때문에 API 호출이나 파일 읽기 같은 작업을 비동기로 처리해야 화면이 멈추지 않습니다. 기존의 .then()을 사용하는 Promise 방식은 코드가 길어지면 꼬리가 물리듯 복잡해지는 단점이 있었습니다. async await는 이러한 프로미스 객체를 기반으로 하.. 2026. 7. 28. 자바스크립트 async await 사용법 자바스크립트에서 비동기 처리를 다룰 때 가장 직관적이고 널리 쓰이는 방법이 바로 async await입니다. 과거의 콜백 함수나 프로미스(Promise)의 복잡한 체이닝 방식에서 벗어나, 동기식 코드처럼 읽기 쉽고 간결하게 비동기 로직을 짤 수 있도록 도와주는 문법입니다. 오늘은 자바스크립트 async await 사용법의 기초부터 실전 예제까지 확실하게 정리해 보겠습니다.1. async await 개념과 필요성자바스크립트는 싱글 스레드로 작동하기 때문에 API 호출이나 파일 읽기 같은 작업을 비동기로 처리해야 화면이 멈추지 않습니다. 기존의 .then()을 사용하는 Promise 방식은 코드가 길어지면 꼬리가 물리듯 복잡해지는 단점이 있었습니다. async await는 이러한 프로미스 객체를 기반으로 하.. 2026. 7. 28. [Java] 자바 제네릭(Generic) 공변성과 반공변성: PECS(Producer-Extends, Consumer-Super) 법칙 정리 자바 제네릭(Generic)을 사용하다 보면 ? extends T와 ? super T라는 와일드카드를 만나게 됩니다. 이 두 가지는 각각 **상한 경계 와일드카드(Upper Bounded Wildcard)**와 **하한 경계 와일드카드(Lower Bounded Wildcard)**를 의미하며, 이를 언제 써야 하는지를 깔끔하게 정리한 법칙이 바로 **PECS(Producer Extends, Consumer Super)**입니다. 오늘은 자바 제네릭의 핵심 개념인 공변성(Covariance)과 반공변성(Contravariance), 그리고 PECS 법칙을 실전 예제와 함께 완벽하게 정리합니다.1. 자바 제네릭의 불변성(Invariance) 이해자바의 제네릭은 기본적으로 **불변(Invariant)**합니다.. 2026. 7. 25. [Spring] JPA N+1 문제 원인 분석과 페치 조인(Fetch Join) 및 @EntityGraph 해결책 Spring JPA를 사용하다 보면 반드시 마주치는 성능 함정이 있습니다. 바로 N+1 문제입니다. 목록 조회 API 하나에서 데이터베이스 쿼리가 수백, 수천 개씩 나가는 현상으로, 대규모 서비스에서는 DB 부하를 폭증시켜 장애를 유발하는 치명적인 문제입니다. 이 글에서는 N+1 문제가 발생하는 원리를 명확하게 이해하고, **페치 조인(Fetch Join)**과 @EntityGraph를 통한 해결 방법을 실전 코드와 함께 완벽하게 정리합니다.1. N+1 문제란 무엇인가?N+1 문제는 연관 관계가 있는 엔티티를 조회할 때, 1번의 쿼리로 N개의 엔티티를 가져온 뒤, 각 엔티티의 연관 데이터를 조회하기 위해 N번의 추가 쿼리가 발생하는 현상입니다. 총 1 + N번의 쿼리가 실행됩니다.도메인 모델 예시@Ent.. 2026. 7. 23. 이전 1 2 3 4 ··· 11 다음