bytebytego라는 블로그를 보다가 흥미로운 주제를 발견하여 간략한 글을 쓰게 되었습니다. 전략Database Indexing (데이터베이스 인덱싱)올바른 인덱스를 만들었는 지 확인느리게 작동하는 쿼리문을 최적화 및 리팩토링Caching (캐싱)자주 사용하는 데이터는 캐시에 저장데이터베이스 조회를 비용적인 측면에서 최소화Load Balancing (로드 밸런싱)다수의 서버에 고르게 요청을 분산알맞은 로드밸런싱 타입과 적절한 알고리즘 사용Content Delivery Network (CDN)사용자와 가까운 서버에 정적 콘텐츠 캐시 (배포)지연시간을 줄이기 위해서 지리적 거리를 줄임Async Processing (비동기 처리)긴 작업을 수행할 때 요청 흐름을 차단하지 않기작업들에 대해서 백그라운드로 실..
Community
전에 커리어리 앱을 보면서 자바 스프링으로 개발하는 개발자 지망생으로서 좋은 글을 공유하면 좋겠다는 생각에 해당 글을 쓰게 되었습니다.개인적으로 2024년 버전이지만 25년, 26년 ... 이 되어도 도움이 되지 않을까 싶습니다. Q&A스프링 프레임워크란 무엇인가요?자바 엔터프라이즈 애플리케이션 개발을 위한 가장 널리 사용되는 프레임워크입니다.경량화, 제어 역전(IOC), 관점 지향 프로그래밍(AOP), 트랜잭션 관리 등의 기능을 제공합니다.스프링을 사용하면 어떤 장점이 있나요?경량화로 프레임워크로 인한 개발 오버헤드가 적습니다.IoC 컨테이너가 객체 간 의존성 주입을 관리해줍니다.AOP로 핵심 로직과 시스템 서비스를 분리할 수 있습니다.대표적인 스프링 하위 프로젝트들은 무엇인가요?스프링 코어: IoC/..
커리어리 앱을 보다가 NullPointerException 위험을 줄이기 위해 null 값을 반환하지 않도록 하는 전략에 대한 글을 보게 되었고, 이를 정리하면 좋겠다는 생각에 글을 쓰게 되었습니다. ✅ null을 반환하는 대신, Optional을 사용하여 값의 부재를 명시적으로 표현하는 것을 고려하세요. 이를 통해 클라이언트는 값이 있는 경우와 없는 경우를 모두 처리할 수 있습니다. ✅ 컬렉션을 처리할 때, null 대신 빈 컬렉션을 반환하세요. 이렇게 하면 클라이언트 코드가 간소화되어 null검사가 필요하지 않고 일관된 인터페이스를 제공할 수 있습니다. ✅ 값이 없는 상태를 나타내는 특정한 객체를 생성하여 Null Object Pattern을 구현하세요. 이 객체는 실제 객체와 동일한 인터페이스 또는..
커리어리 앱을 보다가 자바 개발자 면접 가이드(1), (2)에 대한 글을 보게 되었고, 이를 간략하게나마 정리하면 좋을 것 같아서 글을 씁니다. (자세한 질문은 참고 링크에 들어가서 보는 걸 추천합니다.) Topic 1: 프로젝트 플로우와 아키텍처 프로젝트의 기능, 흐름 및 아키텍처에 대해 문의합니다. 또한 기술 스택과 운영 환경에 어떻게 배포되는지, 지원자가 기여한 부분에 대해서도 질문합니다. 프로젝트에 대해 아는 모든 것을 어딘가에 적어두세요. 당신만이 프로젝트에 대해 모든 것을 알고 있다는 것을 기억하고, 자신감을 가지세요 Topic 2: 코어 자바 코어 자바는 방대한 주제이며 면접관은 이러한 주제를 반드시 물어봅니다. 코어 자바는 자바 개발자에게 기본적인 것으로 여겨지므로 이 부분에 대해 철저한 ..