함수형 프로그래밍

·Java
Java에서의 함수형 프로그래밍 기본 람다 표현식 (Lambda Expressions) Java 8의 가장 큰 변화 중 하나는 람다 표현식의 도입입니다. 람다 표현식을 통해 간결하게 코드를 작성할 수 있으며, 함수를 마치 객체처럼 다루게 됩니다. 이는 고차 함수(higher-order functions)의 개념을 자바에 소개하는 것으로, 함수를 파라미터로 전달하거나 결과값으로 반환할 수 있게 합니다. List names = Arrays.asList("John", "Doe", "Jane", "Doe"); Collections.sort(names, (String a, String b) -> b.compareTo(a)); 스트림 API (Stream API) 스트림 API는 데이터 컬렉션 처리를 위한 강력한 ..
·Java
람다식(Lambda Expressions) 개념 람다식은 간단히 말해서 익명 함수의 일종입니다. 람다식을 사용하면 메소드를 하나의 식(expression)으로 표현할 수 있으며, 이는 코드를 더 간결하게 만들어 줍니다. 람다식은 주로 함수형 인터페이스(단 하나의 추상 메소드를 가진 인터페이스)와 함께 사용됩니다. 기본 문법 (parameters) -> expression 또는 (parameters) -> { statements; } 예시 // 람다식을 사용하지 않은 경우 new Thread(new Runnable() { @Override public void run() { System.out.println("Thread running"); } }).start(); // 람다식을 사용한 경우 new Thr..
·Kotlin
함수형 프로그래밍의 개념 함수형 프로그래밍은 순수 함수와 불변성의 원칙을 강조하는 프로그래밍 패러다임입니다. 이는 프로그램의 예측 가능성과 테스트 용이성을 높이는 데 중점을 둡니다. Kotlin에서의 함수형 프로그래밍 순수 함수 (Pure Functions): 함수의 반환 값이 오직 입력 값에만 의존하며, 부작용(side-effects)이 없는 함수를 사용합니다. 예: fun square(n: Int) = n * n 불변성 (Immutability): 데이터의 불변성을 유지하며, 변경 가능한 상태를 최소화합니다. 예: val list = listOf(1, 2, 3) 고차 함수 (Higher-Order Functions): 함수를 매개변수로 받거나 함수를 반환하는 고차 함수를 사용합니다. 예: fun tr..
·Kotlin
확장 함수와 함수형 프로그래밍 Kotlin에서 확장 함수는 함수형 프로그래밍의 원칙을 적용하고 강화하는 데 유용한 도구입니다. 함수형 프로그래밍은 순수 함수, 불변성, 고차 함수 등의 개념을 통해 보다 안정적이고 유지보수가 쉬운 코드를 작성하는 것을 목표로 합니다. 확장 함수를 통한 함수형 프로그래밍 적용 확장 함수를 사용하여 기존 클래스에 순수 함수를 추가하거나, 함수형 인터페이스를 보강할 수 있습니다. 이를 통해 기존 객체의 불변성을 유지하면서도 필요한 기능을 추가할 수 있습니다. 예제: 컬렉션 처리 확장 함수 컬렉션 처리에 확장 함수를 적용하는 예시는 다음과 같습니다: fun List.customFilter(predicate: (T) -> Boolean): List { val result = mut..
wsstar
'함수형 프로그래밍' 태그의 글 목록