[Dart] Class & Object

김강태·2023년 11월 29일

Class & Object

class란?

dart는 모든 것이 객체인 완전 객체 지향 언어이다. 모든 객체(Object)는 클래스(Class)의 인스턴스이다. 그리고 모든 클래스는 Object 클래스의 자식이다.

class를 사용하는 이유

  1. 구조화와 모듈화: 클래스를 사용하면 코드를 논리적으로 그룹화하고 모듈화할 수 있습니다. 클래스는 데이터와 관련 메서드를 함께 묶어 더 의미 있는 단위로 만듭니다.
  2. 코드의 재사용: 클래스는 객체 지향 프로그래밍의 핵심 개념으로, 코드를 재사용할 수 있게 해줍니다. 클래스를 정의하고 필요한 곳에서 해당 클래스의 인스턴스를 생성하여 사용하면, 비슷한 기능을 가진 코드를 반복 작성하지 않아도 됩니다.
  3. 유지보수성 향상: 클래스는 코드를 논리적으로 그룹화하고 캡슐화함으로써 유지보수를 용이하게 만듭니다. 코드의 수정이나 업데이트가 필요할 때 해당 클래스만 수정하면 되므로 다른 부분에 영향을 덜 미칩니다.
  4. 객체 지향 프로그래밍 (OOP): Dart는 객체 지향 프로그래밍 언어이며, 클래스와 객체를 사용하여 프로그래밍합니다. OOP는 코드를 현실 세계의 개념과 모델에 가깝게 만들어 추상화하고, 캡슐화, 상속, 다형성 등의 특징을 통해 코드를 더 유연하고 이해하기 쉽게 만듭니다.
  5. 타입 시스템 강화: Dart는 강력한 정적 타입 시스템을 가지고 있으며, 클래스와 객체를 통해 코드의 타입을 명확하게 정의할 수 있습니다. 이는 코드의 안정성을 향상시키고 오류를 사전에 방지하는 데 도움이 됩니다.

Class 예제

void main() {
  var person = Person('John Doe',30);
  person.printInfo();
}

class Person {
  var name;
  var age;

  Person(this.name, this.age);

  void printInfo(){
    print('name : $name , age: $age');
  }


}

다음과 같이 Person이라는 class를 생성하였고, main에서 Person Class를 person 변수에 객체로 선언하였다.
Person 안에서는 객체의 변수(name,age)를 선언하였고 메소드(printInfo())를 생성하였다.

profile
dart / flutter

0개의 댓글