공부한 내용 정리할 겸 혼자 쓰는 블로그
Blog Posts
한입크기로 잘라먹는 React 수강 후기
Feb 19, 2025
React
Review
FrontEnd
RestTemplate vs WebClient, RestTemplate deprecated 루머
RestTemplate은 동기 방식으로 간단한 API 호출에 적합하지만, WebClient는 비동기 방식으로 더 높은 성능을 제공하며 SpringBoot 5+에서 권장된다. RestTemplate은 현재 유지 관리 모드에 있으며, 장기적으로는 RestClient 사용이 권장된다.
Feb 17, 2025
RestTemplate
WebClient
Dev
LoggerFactory is not a Logback LoggerContext but Logback is on the classpath.
LoggerFactory는 Logback LoggerContext가 아니지만 Logback이 클래스 경로에 있습니다. Logback 또는 경쟁 구현을 제거해야 하며, Gradle에서 의존성 충돌을 해결하기 위해 특정 라이브러리를 제외하는 설정을 추가했습니다.
Feb 17, 2025
LogggerFactory
log4j
slf4j
Dev
Spring AI 간단 리서치
Spring AI는 OpenAI 모델을 사용하여 멀티모달 입력을 처리하며, 다양한 모델 선택과 효과적인 프롬프트 생성 방법을 제공한다. 또한, 임베딩 모델과 벡터 DB를 활용하여 관련 정보를 검색하고 응답을 생성하는 방법을 설명한다.
Feb 12, 2025
SpringBoot
SpringAI
Dev
2023 회고
2023년 회고: 건강과 운동에서의 성과와 도전, 직장 내 불안정한 상황, 개인적 성취와 친구들의 긍정적인 영향, 내년 목표로는 술 줄이기, 운동과 공부 강화, 직장 내 존재감 증대 등이 있다.
Dec 31, 2023
회고
아이템87. 커스텀 직렬화 형태를 고려하라
Serializable 클래스를 구현할 때 기본 직렬화 형태에 의존하면 유연성과 성능에 문제가 발생할 수 있다. 커스텀 직렬화를 고려하고, transient 필드를 적절히 사용하여 객체의 논리적 상태와 물리적 표현을 분리해야 한다. SerialVersionUID를 명시적으로 선언하여 호환성을 유지하는 것도 중요하다.
Jul 6, 2023
EffectiveJava
Java
Dev
상속보다는 컴포지션을 사용하라
상속은 캡슐화를 해치고 복잡성을 증가시킬 수 있으므로, 컴포지션을 사용하여 기존 클래스의 인스턴스를 참조하는 방식이 더 안전하고 유연하다. 상속은 is-a 관계에서만 사용해야 하며, 그렇지 않으면 내부 구현이 노출될 위험이 있다.
Nov 18, 2022
Java
Dev
EffectiveJava
아이템 20. 추상 클래스보다는 인터페이스를 우선하라
자바에서 인터페이스는 다중 구현을 지원하고, 기존 클래스에 쉽게 추가할 수 있으며, 믹스인 정의와 계층구조 없는 타입 프레임워크를 만들 수 있는 장점이 있다. 반면, 추상 클래스는 상속의 제약이 있으며, 인터페이스는 인스턴스 필드를 가질 수 없다. 골격 구현 클래스를 사용하면 두 가지의 장점을 모두 취할 수 있다.
Nov 17, 2022
Java
Dev
EffectiveJava
아이템19. 상속을 고려한 설계
상속을 고려한 설계에서는 메서드 재정의 시 문서화가 필수적이며, protected 메서드를 통해 하위 클래스의 효율성을 높일 수 있다. 상속용 클래스는 재정의 가능 메서드를 호출하지 않아야 하며, 일반적인 구체 클래스의 상속은 금지하는 것이 좋다. 상속을 피하려면 클래스를 final로 선언하거나 생성자를 비공개로 설정해야 한다.
Nov 13, 2022
EffectiveJava
Java
Dev
AWS SDK for Java 1.v -> 2.x 마이그레이션
AWS SDK for Java 1.x에서 2.x로의 마이그레이션 시 HTTP 클라이언트 구성, 비동기 프로그래밍 지원, 자격 증명 공급자 및 메서드 이름 변경 등의 주요 변경 사항을 확인하고, 새로운 API 사용을 위한 준비가 필요합니다.
Apr 5, 2022
Aws
Dev