

Dart 문법 OOP - 게터와 세터Dart/OOP2024. 8. 20. 19:24
Table of Contents
게터와 세터의 정의
게터(getter)는 말 그대로 값을 가져올 때 사용되고, 세터(setter)는 값을 지정할 때 사용된다.
게터와 세터를 사용하면 클래스의 내부 구현을 숨기면서도 속성에 대한 접근을 제공할 수 있다.
이는 캡슐화의 원칙을 지키면서도 유연한 인터페이스를 제공할 수 있게 해준다.
Dart 프로그래밍 언어에서 게터(getter)와 세터(setter)는 객체 지향 프로그래밍의 중요한 개념이다.
이들은 클래스의 속성에 접근하고 수정하는 방법을 제어하는 데 사용된다.
게터(Getter)란?
게터는 객체의 특정 속성 값을 읽을 때 사용되는 특별한 메서드이다.
"get"이라는 단어에서 알 수 있듯이, 게터는 값을 "가져오는" 역할을 한다.
게터의 특징:
- 값을 반환한다.
- 매개변수를 받지 않는다.
- 읽기 전용 속성을 만드는 데 사용될 수 있다.
세터(Setter)란?
세터는 객체의 특정 속성에 값을 할당할 때 사용되는 특별한 메서드이다.
"set"이라는 단어에서 알 수 있듯이, 세터는 값을 "설정하는" 역할을 한다.
세터의 특징:
- 값을 설정한다.
- 정확히 하나의 매개변수를 받는다.
- 쓰기 가능한 속성을 만드는 데 사용된다.
게터와 세터의 장점
- 캡슐화: 내부 데이터를 숨기고 접근을 제어할 수 있다.
- 유연성: 속성에 접근하는 방식을 나중에 변경할 수 있다.
- 검증: 세터를 통해 입력 값을 검증할 수 있다.
- 계산된 속성: 게터를 사용하여 동적으로 계산된 값을 반환할 수 있다.
게터와 세터 구현하기
Dart에서 게터와 세터를 구현하는 방법을 살펴보겠다.
코드 설명:
- _name은 프라이빗 변수로, 클래스 외부에서 직접 접근할 수 없다.
- get name은 게터로, _name 값을 반환한다.
- set name은 세터로, 새로운 값을 _name에 할당한다.
게터와 세터 사용하기
게터와 세터는 일반 변수처럼 사용된다.
메서드 호출 구문()을 사용하지 않는다.
최신 트렌드: 불변성과 게터
최근 객체 지향 프로그래밍에서는 불변성(immutability)이 중요한 개념으로 부각되고 있다.
이로 인해 세터의 사용이 줄어들고 있다.
불변성의 장점:
- 예측 가능성: 객체의 상태가 변하지 않아 프로그램의 동작을 예측하기 쉽다.
- 동시성: 여러 스레드에서 안전하게 객체를 공유할 수 있다.
- 버그 감소: 상태 변경으로 인한 버그 가능성이 줄어든다.
따라서 많은 개발자들이 세터 대신 생성자를 통해 초기값을 설정하고, 게터만을 사용하여 값을 읽는 방식을 선호한다.
'Dart > OOP' 카테고리의 다른 글
Dart 문법 OOP - 오버라이드 (0) | 2024.08.20 |
---|---|
Dart 문법 OOP - 상속 (0) | 2024.08.20 |
Dart 문법 OOP - private 변수 (0) | 2024.08.20 |
Dart 문법 OOP - 생성자 (0) | 2024.08.20 |
Dart 문법 OOP - 클래스와 인스턴스 (0) | 2024.08.20 |

@codeJunH :: codeJunH의 IT 공부 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!