이번 글은 Dart 프로그래밍 언어에서 중요한 개념인 함수와 메서드에 대해 설명합니다. 함수와 메서드는 코드 재사용성과 모듈화를 높이고, 객체지향 프로그래밍의 핵심 요소입니다. Dart 입문자 관점에서 함수와 메서드의 구문, 사용 방법, 예제 등을 통해 설명하여 Dart 프로그래밍의 기본 개념을 익히는 데 도움이 되도록 작성하였습니다.

Dart 함수와 메서드
함수와 메서드는 Dart 프로그래밍에서 중요한 개념입니다. 함수는 특정 작업을 수행하는 코드 블록이며, 메서드는 객체 내에 정의된 함수입니다. 둘 다 입력을 받아 처리한 후 결과를 반환할 수 있습니다.
1. 함수
함수는 코드를 모듈화 하고 재사용성을 높이는 데 도움이 됩니다. 함수는 다음과 같은 구조로 정의됩니다:
returnType functionName(parameters) {
// 함수 본문
return result;
}
- returnType : 함수가 반환하는 값의 타입을 지정합니다. 값을 반환하지 않는 경우 `void`를 사용합니다.
- functionName : 함수의 이름입니다.
- parameters : 함수에 전달되는 입력 값의 목록입니다. 필요하지 않은 경우 생략할 수 있습니다.
예제:
returnType functionName(parameters) {
// 함수 본문
return result;
}
선택적 위치 매개변수와 기본값
Dart에서는 함수에 선택적 위치 매개변수와 기본값을 설정할 수 있습니다.
String sayHello(String name, String greeting, [String? title]) {
return "$greeting, $title $name";
}
void main() {
print(sayHello("John", "Hello")); // "Hello, null John"
print(sayHello("Jane", "Hi", "Ms.")); // "Hi, Ms. Jane"
}
익명 함수
Dart에서는 익명 함수를 사용할 수 있습니다. 이는 함수 이름이 없는 함수이며, 주로 다른 함수의 인수로 전달되거나 변수에 할당됩니다.
void main() {
var multiply = (int a, int b) => a * b;
print(multiply(3, 4)); // 12
}
2. 메서드
메서드는 객체 내에 정의된 함수입니다. 메서드는 객체의 상태를 변경하거나 객체의 데이터에 접근할 수 있습니다.
메서드는
객체의 속성에 접근하여 값을 읽거나 변경할 수 있습니다. 이를 게터와 세터라고 합니다.
class Rectangle {
double _width = 0;
double _height = 0;
// 게터
double get area => _width * _height;
// 세터
set width(double value) {
_width = value;
}
set height(double value) {
_height = value;
}
}
void main() {
Rectangle rect = Rectangle();
rect.width = 5;
rect.height = 10;
print(rect.area); // 50.0
}
이렇게 함수와 메서드는 Dart 프로그래밍에서 중요한 역할을 합니다. 함수는 코드를 모듈화 하고 재사용성을 높이며, 메서드는 객체에 기능을 추가하고 상태를 관리합니다.
'프로그래밍 언어 > Dart' 카테고리의 다른 글
Dart 객체지향 프로그래밍: 생성자와 소멸자 개념과 예제 - Dart 기초 #9 (0) | 2024.06.11 |
---|---|
Dart 객체지향 프로그래밍: 클래스와 객체 이해하기 - Dart 기초 #8 (0) | 2024.06.10 |
Dart List와 Map 완벽 가이드, 조건문과 반복문 예제 포함 - Dart 기초 #6 (0) | 2024.06.07 |
Dart 문자열 선언, 연결, 보간 및 비교 방법. Dart 프로그래밍 가이드 - Dart 기초 #5 (0) | 2024.06.05 |
Dart 연산자: 산술, 비교, 논리, 비트 연산자 사용 예제 및 설명 - Dart 기초 #4 (0) | 2024.06.04 |