0Pricing
Dart Academy · 강의

기본값과 required

매개변수를 선택 사항 또는 필수로 만듭니다

기본값과 required은(는) CoddyKit의 무료 Dart Academy 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Dart Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Dart Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

합리적인 대체값

기본값은 호출자가 매개변수를 생략했을 때 Dart가 사용하는 대체값입니다. 매번 당연한 값을 전달해야 하는 수고를 덜어 줍니다.

이름 지정 매개변수의 기본값

등호를 사용해 이름 지정 매개변수에 기본값을 지정합니다. 호출자가 생략하면 Dart는 null 대신 해당 값을 조용히 사용합니다.

void greet({String name = "friend"}) {
  print("Hi $name");
}

기본값으로 호출하기

매개변수를 생략하면 기본값이 적용됩니다. 값을 전달하면 해당 한 번의 호출에 한해 대체값이 덮어씌워집니다.

greet();            // Hi friend
greet(name: "Ada"); // Hi Ada

선택적 위치 기반 매개변수의 기본값

대괄호로 묶은 선택적 위치 기반 매개변수에도 기본값을 지정할 수 있으므로, 실수로 null이 되지 않습니다.

int pow(int base, [int exp = 2]) {
  return base * exp;
}

기본값은 상수여야 합니다

기본값은 컴파일 시점 상수여야 합니다. 리터럴과 const 값은 사용할 수 있지만 일반 변수나 함수 호출은 사용할 수 없습니다.

void f({int n = 10}) {} // ok
// void g({int n = x}) {} // error

required 키워드

이름 지정 매개변수에 required를 표시하면 호출자가 반드시 값을 제공하게 할 수 있습니다. 이를 빠뜨리면 실행 중 예기치 않은 문제가 발생하는 대신 컴파일 오류가 발생합니다.

void send({required String to}) {}

required가 중요한 이유

이름 지정 매개변수는 기본적으로 선택 사항이므로 키-값이 누락될 수 있습니다. required는 호출자가 항상 값을 제공하도록 보장합니다. 🔒

null을 허용하지 않는 형식과 required

null을 허용하지 않는 이름 지정 매개변수는 required이거나 기본값이 있어야 합니다. 그렇지 않으면 Dart가 해당 매개변수에 값이 들어 있다고 보장할 수 없습니다.

void box({required int w, int h = 10}) {}

required와 기본값 함께 사용하기

하나의 함수에서 두 방식을 함께 사용할 수 있습니다. 일부 매개변수는 required로 지정하고, 나머지는 적절한 기본값을 사용할 수 있습니다. 호출자에게 명확하면서도 유연한 인터페이스를 제공합니다.

void user({required String id, bool active = true}) {}

기본값이 없는 nullable 매개변수

이름 지정 매개변수가 null 허용이면 간단히 null을 기본값으로 사용할 수 있습니다. required나 명시적인 기본값이 필요하지 않습니다.

void note({String? text}) {} // text may be null

더 깔끔한 호출부

좋은 기본값은 호출부를 간결하게 만듭니다. 호출자는 특별한 경우에만 값을 전달하고, 일반적인 경우는 기본값이 자연스럽게 처리하도록 할 수 있습니다. ✨

빠른 확인

required와 기본값을 이해했는지 확인해 보겠습니다.

복습

이제 선택적 매개변수에 기본값을 설정하고, 중요한 매개변수를 필수로 만들기 위해 required를 사용할 수 있습니다. 함수가 더 안전하고 편리해졌습니다. 🎉

자주 묻는 질문

“기본값과 required” 강의는 무료인가요?

네 — “기본값과 required” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Dart Academy 강의 전체를 잠금 해제할 수 있습니다. Dart Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“기본값과 required”에서 뭘 배우나요?

매개변수를 선택 사항 또는 필수로 만듭니다 브라우저에서 직접 실행하는 실습 코드로 Dart Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Dart Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Dart Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.

“기본값과 required” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Dart Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Dart Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 함수와 반환 자료형 선언하기
  2. 위치 매개변수와 이름 있는 매개변수
  3. 기본값과 required
  4. 일급 값으로서의 함수
← Dart Academy(으)로 돌아가기