[면접공부하기]

suye 22·2023년 2월 22일

기술면접 준비하기

목록 보기
9/16

DI(Dependency Injection)에 대한 설명과 해당 기술의 장점에 대해 설명해주세요.

  • 내부에서 객체를 직접 생성하거나 제어하는 것이아니라, 필요한 객체를 외부에서 결정에서 연결시키는 것을 의미

장점

  • 의존성이 줄어든다(결합도가 낮아진다)
  • 재사용성이 높은 코드가 된다
  • 테스트하기 좋은 코드가 된다
  • 가독성이 높아진다.

DB에서 인덱스를 잘 사용하면 어떤 장점이 있을까요?

  • 데이터베이스 테이블에 대한 검색 성능의 속도를 높여주는 자료구조

장점

  • 데이터 들이 정렬이 되어 있어 검색에 용이
  • 시스템의 전반적인 부하를 줄일 수 있음

단점

  • 인덱스를 관리하기 추가 작업이 필요
  • 잘못 사용하는 경우 오히려 검색 성능이 저하

사용이유

  • WHERE 구문과 일치하는 열을 빨리 찾기 위해.
  • 특정 열을 고려 대상에서 빨리 없애 버리기 위해.
  • 조인 (join)을 실행할 때 다른 테이블에서 열을 추출하기 위해.
  • 특정하게 인덱스된 컬럼을 위한 MIN() 또는 MAX() 값을 찾기 위해.
  • 사용할 수 있는 키의 최 좌측 접두사(leftmost prefix)를 가지고 정렬 및 그룹화를 하기 위해.
  • 데이터 열을 참조하지 않는 상태로 값을 추출하기 위해서 쿼리를 최적화 하는 경우.

0개의 댓글