Spring Boot 의존성 주입은 왜 필요할까: new로 직접 만들지 않는 이유
Spring Boot 의존성 주입을 new로 직접 객체를 만드는 방식과 비교해 설명합니다. Bean, IoC Container, constructor injection, 테스트 편의성, 결합도 기준을 예제로 정리합니다.
Spring Boot 의존성 주입을 new로 직접 객체를 만드는 방식과 비교해 설명합니다. Bean, IoC Container, constructor injection, 테스트 편의성, 결합도 기준을 예제로 정리합니다.
자바 Stream과 for문의 차이를 가독성, 중간 연산, 최종 연산, 부작용, 성능, 디버깅 기준으로 설명합니다. 언제 Stream을 쓰고 언제 for문이 나은지 예제로 정리합니다.
자바 equals와 hashCode를 함께 구현해야 하는 이유를 HashSet 중복, HashMap 조회 실패, mutable key 문제로 설명합니다. 규약, IDE 생성, record 사용 기준까지 예제로 정리합니다.
자바 Optional을 null 대체 문법이 아니라 반환 타입과 API 설계 도구로 정리합니다. ofNullable, orElse, orElseGet, map 사용 기준과 필드·파라미터에서 조심해야 할 점을 예제로 설명합니다.
자바 varargs를 String… args 문법, 배열과의 관계, 오버로딩 모호성, generic varargs 경고 기준으로 정리합니다. 편한 API를 만들 때와 실수를 부르는 상황을 예제로 설명합니다.
자바 enum을 단순 상수 모음이 아니라 필드, 생성자, 메서드, switch 기준으로 설명합니다. 상태와 분류를 타입으로 표현하는 기준, 과하게 쓰면 안 되는 경우와 실무 판단 기준도 실제 코드 예제로 정리합니다.