일반적으로 stream은 Input/Output(IO)에서 사용하는 용어죠. 자바 8 스펙에 포함되어 있는 Stream API도 IO Stream과 같은 특성을 가지고 있기 때문이라고 생각합니다.
Stream의 특징 중 대표적인 것이 메서드를 호출하는 시점에 연산이 바로 실행되지 않기 때문에 모든 데이터를 메모리에 데이터를 쌓지 않아도 되는 특징이 있듯이 자바 8의 Stream API도 메서드를 호출하는 시점에 연산이 바로 실행되지 않는 특징, 즉, 지연 연산이 가능하죠. 이런 특징을 가지고 있다보니 무한히 큰 데이터에 대한 연산을 수행할 수도 있겠죠.
Stream에 대해서 더 깊이 있게 학습하려면 SICP 책 보면 좋은데 이 책이 좀 난이도가 있어서... IO Stream의 특징을 이해하면 자바 8 Stream을 이해하는데 도움이 되니 한번 학습해 보시기 바랍니다.
2개의 의견 from SLiPP
일반적으로 stream은 Input/Output(IO)에서 사용하는 용어죠. 자바 8 스펙에 포함되어 있는 Stream API도 IO Stream과 같은 특성을 가지고 있기 때문이라고 생각합니다.
Stream의 특징 중 대표적인 것이 메서드를 호출하는 시점에 연산이 바로 실행되지 않기 때문에 모든 데이터를 메모리에 데이터를 쌓지 않아도 되는 특징이 있듯이 자바 8의 Stream API도 메서드를 호출하는 시점에 연산이 바로 실행되지 않는 특징, 즉, 지연 연산이 가능하죠. 이런 특징을 가지고 있다보니 무한히 큰 데이터에 대한 연산을 수행할 수도 있겠죠.
Stream에 대해서 더 깊이 있게 학습하려면 SICP 책 보면 좋은데 이 책이 좀 난이도가 있어서... IO Stream의 특징을 이해하면 자바 8 Stream을 이해하는데 도움이 되니 한번 학습해 보시기 바랍니다.
와, 명쾌한 답변 감사합니다 ^0^b
의견을 남기기 위해서는 SLiPP 계정이 필요합니다.
안심하세요! 회원가입/로그인 후에도 작성하시던 내용은 안전하게 보존됩니다.
SLiPP 계정으로 로그인하세요.
또는, SNS 계정으로 로그인하세요.