안녕하시렵니까?
오늘은 함수형 프로그래밍에 대해서 정리해 보려고 합니다!! 하핫
이제 겨우겨우 함수에 대해서 배웠는데,
함수형 프로그래밍이라니,, 벌써 두려우신가요...(저도요)

하지만..! 이 개념을 확실하게 알고 가면 앞으로 자주 쓰게 될 테니 우리 조금만 힘내보자구요!!!
함수형 프로그래밍
1. 프로그램을 함수의 조합으로 바라보는 사고 방식
함수의 조합, 즉 연속해서 작성하는 방식을 메서드 체이닝이라고 한다!
메서드 체이닝이란?
. 을 사용해서 여러 개의 함수를 하나로 연결하는 방식
int number = -12345
var result = number.abs().toString().contains('3'); -> .으로 연결!
print(result); // true
2. 가변적인 데이터의 사용을 최소화하여 프로그램을 구성하는 방식
즉, 출력값이 항상 그 함수의 매개변수(입력값)에만 의존하게 한다는 뜻이다.
int add(int a, int b) {
return a + b;
}
void main() {
int result = add(3, 4); -> 매개변수 값 전달
print(result); // 7
}
이런 형태의 함수를 순수 함수(Pure Function)라고 부른다!
순수 함수란?
값을 입력 값에 대해서 항상 같은 출력값이 나오는 함수
즉, 입력만 보고 결과를 알 수 있는 함수이다!
사용 이유
같은 값을 입력하면 항상 같은 값이 나오기 때문에 예상하지 못 했던 상황이 생길 일이 적어진다.
예측 가능하고, 고치기 쉽고, 안전하게 만들기 위해 사용한다.
추가로, 예상하지 못 했던 상황을 부작용(Side Effect)이라고 한다!
'플러터 앱 개발' 카테고리의 다른 글
| Chapter 8. 함수형 프로그래밍 B - 형변환 함수, 고차 함수 (0) | 2026.01.06 |
|---|---|
| [코드 뜯어보기] 쇼핑몰 앱 만들기 A (1) | 2025.12.30 |
| Chapter 6. Dart 심화 문법 C - 함수와 제네릭 (1) | 2025.12.29 |
| [Dart 심화] 개인 과제 2 트러블 슈팅 (0) | 2025.12.12 |
| Chapter 6. Dart 심화 문법 B - 열거형(Enumerations) (0) | 2025.12.10 |