2024-07-18 용어 정리

찬근·2024년 7월 18일
0

Arrays

  • Java에서 배열을 다루기 위한 유틸리티 클래스
  • 배열의 정렬, 검색, 복사, 채우기 등 다양한 작업을 수행하는 정적 메소드 제공
  • Arrays.sort(), Arrays.binarySearch(), Arrays.fill() 등의 메소드가 자주 사용됨

Quick Sorting

  • 효율적인 비교 기반 정렬 알고리즘
  • 평균적으로 O(nlogn)의 시간 복잡도를 가짐
  • 피벗을 선택하고 파티셔닝하는 과정을 재귀적으로 반복하여 정렬을 수행
  • Java의 Arrays.sort() 메소드에서 내부적으로 사용되는 알고리즘 중 하나

Lambda

  • Java 8에서 도입된 함수형 프로그래밍 기능
  • 익명 함수를 간결하게 표현할 수 있는 방법 제공
  • (매개변수) -> { 표현식 } 형태로 작성
  • 함수형 인터페이스와 함께 사용되어 코드의 가독성과 유연성을 향상시킴

Method References

  • 람다 표현식을 더욱 간결하게 표현하는 방법
  • 이미 정의된 메소드를 참조하여 람다 표현식을 대체
  • 정적 메소드 참조(ClassName::staticMethodName), 인스턴스 메소드 참조(instance::methodName), 생성자 참조(ClassName::new) 등의 형태로 사용

Stream

  • Java 8에서 도입된 데이터 처리를 위한 선언적 API
  • 컬렉션, 배열 등의 데이터 소스로부터 연속된 요소를 처리하는 기능 제공
  • 병렬 처리가 용이하며, 함수형 프로그래밍 스타일을 지원
  • 중간 연산과 최종 연산으로 구성되어 데이터 처리 파이프라인을 구축

Method Chaining

  • 여러 메소드 호출을 연쇄적으로 연결하는 프로그래밍 패턴
  • 각 메소드가 객체 자신을 반환하여 추가적인 메소드 호출이 가능하게 함
  • 코드의 가독성을 높이고 간결한 표현을 가능하게 함
  • Stream API에서 자주 사용되는 패턴

Functional Interface

  • 단 하나의 추상 메소드만을 가지는 인터페이스
  • Java 8부터 @FunctionalInterface 어노테이션으로 명시 가능
  • 람다 표현식과 함께 사용되어 함수형 프로그래밍을 지원
  • Predicate, Function, Consumer, Supplier 등이 대표적인 예

Intermediate and Terminal Operations

  • Stream API에서 사용되는 두 가지 주요 연산 유형
  • Intermediate Operations: 중간 연산으로, 새로운 스트림을 반환하며 지연 평가됨 (예: filter, map, flatMap)
  • Terminal Operations: 최종 연산으로, 스트림을 소비하고 결과를 생성함 (예: forEach, collect, reduce)
  • 중간 연산은 여러 번 호출 가능하지만, 최종 연산은 스트림의 끝에서 한 번만 호출 가능
profile
일관성 있는 개발자

0개의 댓글