일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- API
- aqqle
- mysql
- KNN
- Selenium
- Cache
- dbeaver
- 아이온큐
- TSLA
- Analyzer
- api cache
- Elasticsearch
- vavr
- ann
- Docker
- Query
- aggs
- elasticsearch cache
- IONQ
- Elastic
- request cache
- 양자컴퓨터
- java crawler
- JPA
- NORI
- java
- file download
- Aggregation
- redis
- 테슬라
- Today
- Total
목록2024/09/02 (2)
아빠는 개발자
Java에서 함수형 프로그래밍(Functional Programming)은 함수가 일급 시민(First-Class Citizen)으로 취급되고, 불변성(immutability)을 강조하며, 부작용(Side Effect)을 최소화하는 프로그래밍 패러다임입니다. Java 8에서 람다(Lambda)와 스트림(Stream) API가 도입되면서 함수형 프로그래밍을 더 쉽게 활용할 수 있게 되었습니다.Java에서 이를 활용하는 방법1. 람다 표현식 (Lambda Expression)람다는 익명 함수(Anonymous Function)로, 메서드를 간결하게 표현할 수 있습니다. 주로 함수형 인터페이스(Functional Interface)를 구현할 때 사용됩니다.// 기존 방식 Runnable runn..
Vavr는 Java에서 함수형 프로그래밍(FP)을 지원하는 라이브러리입니다.이 라이브러리는 Java의 전통적인 객체 지향 프로그래밍 스타일을 보완하며, 함수형 프로그래밍 패러다임을 더 쉽게 구현할 수 있도록 도와줍니다. Vavr은 Java에서 부족한 함수형 프로그래밍 관련 기능을 제공하고, 불변성, 함수형 데이터 구조, 고차 함수, 패턴 매칭 등의 개념을 지원합니다.주요 기능함수형 데이터 구조: Vavr은 불변 컬렉션과 데이터 구조를 제공합니다. 예를 들어, List, Map, Set 등 Java 표준 라이브러리의 컬렉션들과 유사한 자료구조를 제공하지만, 이들은 모두 불변입니다. 불변성은 멀티스레드 환경에서 안전하게 사용할 수 있다는 장점이 있습니다.옵셔널 타입: Java의 Optional 클래스와 유사..