Java 8과 Lambda, Stream, Functional Programming

GilLog·2021년 6월 4일
0

ModernJavaInAction

목록 보기
1/7

🙆‍♂️ import 🙇‍♂️

Modern Java in Action


Lambda

Lambda의 핵심은 간결하게 Java Program을 구현 할 수있다는 것이다.

Lambda를 사용하면 Event Handler, CallBack등을 더 다양한 분야에서 사용할 수 있다.

다시 말해 Lambda와 Method 참조를 통해 어떤 코드 동작 중에 실행 될 수 있는 Code나 Method를 간단하게 인수로 전달 할 수 있다.


Stream

Stream은 Java 8 부터 추가된 놀라운 기능이다.

Collection과 비슷하게 동작하지만, 새로운 Programming 형식을 지원하는 훌륭한 기능이다.

SQL 같은 DB 질의어도 기존 Java Code로 작성하려면 많은 행이 필요했지만, Stream을 사용하면 간단하게 Programming 할 수 있고,

Stream을 처리하는 Data와 처리된 Data를 포함해 모두 Memory에 저장 하지 않을 수도 있게 설계되었다.

따라서 Stream을 이용하면 Memory에 저장하기 힘든 큰 Data도 문제 없이 처리 할 수 있다.

Collection에서 처리 할 수 없는 최적화도 적용되었는데,

여러 수행을 Group화 하여 Data를 여러 번 탐색 없이 한 번의 탐색으로 마칠 수 있고,
해당 수행들을 병렬화 할 수도있다.


Functional Programming

Functional Programming은 Programming 기법으로, Function을 Value로 취급한다.

Java 8 엄청난 변화는 Functional Programming의 장점을 Java 문법에 접목시켰다는 것이다.

Java 8의 설계 덕에 Functional ProgrammingJava 8에 새롭게 추가 된 Design Pattern 처럼 사용할 수 있고, 짧은 시간에 명확하고 간결한 Code 작성이 가능해졌다.

profile
🚀 기록보단 길록을 20.10 ~ 22.02 ⭐ Move To : https://gil-log.github.io/

0개의 댓글