본문 바로가기

책을 읽겠습니다!/Java 8 in Action2

[Java 8 in Action] 52 ~ 61 요약 스트림 기존에는 컬렉션 API를 통해서 반복 과정을 직접처리하였습니다. (외부 반복) 반면 스트림 API를 이용하면 루프를 신겅 쓸 필요가 없습니다. 스트림 API에서는 라이브러리 내부에서 모든 데이터가 처리됩니다. (내부 반복) 컬렉션을 이용했을 때 다른 문제가 생길 수 있습니다. 예를 들어 많은 요소를 가진 목록을 반복한다면 오랜 시간이 걸릴 수 있습니다. 이럴 경우 멀티코어 컴퓨터를 통해 서로 다른 CPU 코어에 작업을 각각 할당해서 처리 시간을 줄일 수 있다면 좋을 것입니다. 멀티스레딩은 어렵다 이전 자바 버전에서 제공하는 스레드 API로 멀티스레딩 코드를 구현해서 병렬성을 이용하는 것은 어렵습니다. 멀티스레디 환경에서 각각의 스레드는 동시에 공유된 데이터에 접근하고, 데이터를 갱신할 수 있습니다.. 2022. 10. 6.
[Java 8 in Action] 35 ~ 51 요약 Java는 지속적으로 발전하고 있다! Java는 과거부터 현재까지 발전하고 있으며 1.8에 들어와서는 컴퓨터 아키텍쳐(멀티코어 CPU)의 발전을 염두해두고 정말 많은 기능들이 추가 되었습니다. 특히 병렬적인 처리에 두고 Stream API, 함수형 프로그래밍 등이 대표적으로 추가되었습니다. 이 책에서는 Strem API를 가장 먼저 소개하려합니다. Stream API는 코드르 간결하고 직관적으로 만들 뿐만 아니라 멀티코어 프로세서의 병렬적인 프로그래밍에도 큰 역할을 합니다. 이 책에서는 Sream을 통해 자바 8은 데이터베이스 질의 언어에서 표현식을 처리하는 것처럼 고수준 언어로 원하는 동작을 표현하고 구현(Stream API)에서 최적의 저수준 실행 방법을 선택하는 방식으로 동작시킨다고 합니다. 즉, .. 2022. 10. 6.