데이터베이스 인덱스는 테이블의 검색 속도를 향상시키기 위한 자료구조이다. 특정 컬럼에 대한 값과 해당 레코드의 위치를 매핑하여 빠른 데이터 접근을 가능하게 한다. 인덱스는 추가적인 저장 공간을 사용하지만, 대량의 데이터에서 검색 성능을 크게 개선한다. 인덱스는 ORDER BY, GROUP BY, WHERE 절의 효율적인 처리를 돕는다. 하지만 INSERT, UPDATE, DELETE 작업시 인덱스 갱신으로 인한 성능 저하가 발생할 수 있다. 1. 인덱스의 자료구조인덱스는 주로 해시 테이블과 B+Tree가 사용된다. 해시 테이블은 O(1)의 시간 복잡도로 빠른 검색이 가능하지만, 범위 검색에는 적합하지 않는다. B+Tree는 균형 잡힌 트리 구조로, O(log N)의 시간 복잡도를 가지며 범위 검색에 효율..
1. 일급 컬렉션(First-Class Collection)이 무엇인가요?일급 컬렉션(First-Class Collection)은 컬렉션 객체를 포장(wrap)하면서, 그 외 다른 멤버 변수가 없는 상태를 말한다. 즉, 컬렉션을 감싸고 있는 클래스로, 해당 클래스는 오직 하나의 컬렉션 필드만 가진다. 일급 컬렉션을 사용하면 컬렉션과 관련된 비즈니스 로직을 한 곳에서 관리할 수 있게 되고, 불변성을 보장하며, 비즈니스에 특화된 명확한 이름을 부여할 수 있어 검색이나 가독성을 높일 수 있다. 1 - 1. 예시아래와 같은 코드가 있다고 가정해보면,List names = new ArrayList();names.add("Alice");names.add("Bob");names.add("Charlie"); 아래와 같..