티스토리 뷰
스트림이란?
빅데이터라는 바람이 불기 시작하면서 방대한 데이터를 효율적으로 처리하기 위해 병렬 프로그래밍이 필요해지기 시작할 무렵
자바8 이전에는 병렬 프로그래밍을 위해 스레드를 사용하였다.
하지만 이렇게 직접 관리를 하다보니 문제가 발생할 수 있고 까다롭다는 단점이 있었다.
이를 인식하고 자바8부터 보다 쉽게 병렬 프로그래밍이 가능하도록 스트림 API를 제공한다.
스트림이란 여러개의 함수를 조립라인처럼 연속적으로 연결하여 보다 간결하게 결과를 만드는 작업을 도와주는 API이다.
이 일련된 작업을 파이프라인이라고 부른다.
파이프라인을 구성하기 위해서는 함수가 값이 될 필요가 있다.
자바 8은 기존의 기본 값과 객체 값 말고도 함수 자체를 값의 형식으로 만들었다.
File[] hiddenFiles = new File(".").listFiles(new FileFilter() {
public boolean accept(File file) {
return file.isHidden();
}
});
덕분에 이렇게 함수 자체를 파라미터화 시켜서 넘겨줄 수 있다.
근데 코드가 난잡하여 가독성이 좋지 않다.
File[] hiddenFiles = new File(".").listFiles(File::isHidden);
람다의 메소드 참조를 사용하면 간결하게 나타낼 수 있다.
'스터디 > 모던 자바 인 액션' 카테고리의 다른 글
챕터 3 (0) | 2023.08.08 |
---|---|
챕터 2 (0) | 2023.08.05 |