

함수형 프로그래밍의 개념
함수형 프로그래밍은 "레고 블록 조립"에 비유할 수 있다.
각 함수는 독립적인 기능을 가진 블록과 같으며, 이들을 조합하여 복잡한 연산을 수행할 수 있다.
순수 함수의 개념은 부작용 없이 동일한 입력에 대해 항상 같은 결과를 반환하는 것을 의미한다.
Dart에서의 함수 선언
Dart에서 함수를 선언하는 일반적인 형식은 다음과 같다:
리턴타입 함수이름(파라미터타입 파라미터) {
// 함수 본문
return 리턴값;
}
예를 들어:
return 키워드와 void 반환 타입
return 키워드는 함수에서 값을 반환하고 함수의 실행을 종료한다.
void 반환 타입은 함수가 값을 반환하지 않음을 나타낸다.
익명 함수와 화살표 함수
화살표 함수는 단일 표현식을 포함하는 간결한 함수 표현 방식이다.
함수는 일급 객체
Dart에서 함수는 일급 객체로, 변수에 할당하거나 다른 함수의 인자로 전달할 수 있다.
매개변수의 종류
Dart에서는 함수의 매개변수를 다양한 방식으로 정의할 수 있다.
주요 매개변수 유형으로는 포지셔널 파라미터, 네임드 파라미터, 옵셔널 파라미터가 있다.
포지셔널 파라미터 (Positional Parameters)
포지셔널 파라미터는 함수 호출 시 인자의 순서에 따라 값이 할당되는 가장 기본적인 형태의 매개변수이다.
특징:
- 함수 호출 시 반드시 모든 인자를 제공해야 한다.
- 인자의 순서가 중요하다. 순서를 바꾸면 의도하지 않은 결과가 발생할 수 있다.
- 코드가 간결해지지만, 많은 매개변수를 가진 함수의 경우 가독성이 떨어질 수 있다.
네임드 파라미터 (Named Parameters)
네임드 파라미터는 매개변수의 이름을 명시하여 함수를 호출하는 방식이다.
순서에 관계없이 매개변수를 지정할 수 있어 가독성이 향상된다.
특징:
- 중괄호 {}로 묶어 정의한다.
- 함수 호출 시 매개변수 이름을 명시해야 한다.
- required 키워드를 사용하여 필수 매개변수로 지정할 수 있다.
- 순서에 관계없이 인자를 전달할 수 있어 유연성이 높다.
- 많은 매개변수를 가진 함수에서 특히 유용하다.
옵셔널 파라미터 (Optional Parameters)
옵셔널 파라미터는 선택적으로 제공할 수 있는 매개변수이다.
Dart에서는 두 가지 형태의 옵셔널 파라미터를 지원한다.
a. 옵셔널 포지셔널 파라미터
대괄호 []로 묶어 정의하며, 함수 호출 시 생략할 수 있다.
특징:
- 대괄호 []로 묶어 정의하다.
- 필수 매개변수 뒤에 위치해야 한다.
- 생략 가능한 매개변수이다.
- 기본값을 지정할 수 있다.
b. 옵셔널 네임드 파라미터
중괄호 {}로 묶어 정의하며, 네임드 파라미터의 특성을 가지면서도 선택적으로 제공할 수 있다.
특징:
- 중괄호 {}로 묶어 정의한다.
- 함수 호출 시 매개변수 이름을 명시한다.
- 제공하지 않은 매개변수는 null이 된다.
- required 키워드를 사용하지 않으면 자동으로 옵셔널이 된다.
- 기본값을 지정할 수 있다.
함수의 객체화
Dart에서 함수는 객체로 취급되어 변수에 할당하거나 다른 함수의 매개변수로 전달할 수 있다.
'Dart > 기본' 카테고리의 다른 글
split() 메서드 (0) | 2024.09.11 |
---|---|
Dart 문법 기본 - 반복문 (0) | 2024.08.20 |
Dart 문법 기본 - 조건문 (0) | 2024.08.20 |
Dart 문법 기본 - 연산자 (0) | 2024.08.20 |
Dart 문법 기본 - 컬렉션 (0) | 2024.08.20 |

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!