728x90
728x90
제목
들어가며
- Dart에서 사용하는 함수 파라미터(Parameter/Argument)에 대해 간단하게 정리해본다.

함수 파라미터(Argument/Parameter)
개념
- 함수에 값을 전달하기 위해 사용하는 핵심 개념
- 전달된 값은 화면에 표시, 계산, 다른 함수 호출 등에 사용됨
- Dart에서는 2가지 파라미터 방식이 존재한다.
입력값은 함수 정의 시에는 매개변수(parameters), 함수 호출 시에는 인자(arguments)라고 부른다.
종류
① Positional Parameter (위치 기반 파라미터)
- 전달한 순서(position)로 어떤 파라미터에 값이 들어갈지를 결정한다.
- 기본적으로 필수(required)이며 생략할 수 없다.
void add(a, b) { // a, b는 positional parameter
print(a + b);
}
add(5, 10); // 5 → a, 10 → b
- 아래 호출은 에러를 발생시킨다.
add(); // positional parameter는 생략 불가
② Named Parameter (이름 기반 파라미터)
- 전달 시 이름(name) 으로 어떤 파라미터에 값이 들어갈지ㄹ,ㄹ 지정한다.
- 함수 정의 시
{}중괄호로 감싼다. - 기본적으로 선택(optional) 이며 생략이 가능하다.
- 전달 순서는 중요하지 않다.
void add({a, b}) { // a, b는 named parameter
print(a + b);
}
add(b: 5, a: 10);
- 아래와 같이 호출할 수도 있다.
add();
add(b: 5);
기본값, 필수값 설정하기
Positional Parameter를 Optional로 만들기
[]대괄호로 감싸면 optional parameter가 된다.
void add(a, [b]) { // b는 optional
print(a + b);
}
- optional parameter에는 다음과 같이 기본값(default value)을 설정할 수 있다.
void add(a, [b = 5]) {
print(a + b);
}
add(10); // b = 5
add(10, 6); // b = 6
Named Parameter의 기본값 설정
- named parameter는 기본적으로 optional하지만, 다음과 같이 기본값을 지정할 수 있다.
void add({a, b = 5}) {
print(a + b);
}
add(b: 10); // b = 10, a는 null
Named Parameter를 Required로 만들기
required키워드를 사용하면 필수 파라미터로 변경할 수 있다.
void add({required a, required b}) { // 두 값을 반드시 전달해야 한다.
print(a + b);
}
add(a: 3, b: 4);
add(a: 3); // ERROR
add(b: 3); // ERROR
정리
| 구분 | Positional Parameter | Named Parameter |
| 정의 형태 | @(a, b)@ | @({a, b})@ |
| 호출 형태 | @add(5, 10)@ | @add(a: 5, b: 10)@ |
| 기본 성격 | 필수 (Required) | 선택 (Optional) |
| 선택적으로 변경 | @[ ]@ 사용 | 기본값이 선택형 |
| 필수적으로 변경 | 기본값이 필수 | @required@ 키워드 사용 |
Flutter 위젯(MaterialApp, Text 등)은 대부분 named parameter 방식을 사용한다.
참고 사이트
Functions
Everything about functions in Dart.
dart.dev
728x90
728x90
'Programming > Dart' 카테고리의 다른 글
| [Dart] Trailing Comma 적용 방법 (0) | 2026.02.07 |
|---|---|
| [Dart] 자료형 비교 (var, const, final) (0) | 2026.02.03 |