본문 바로가기
PM 기술스터디

(Flutter Study) DART 언어 - Class.1

by Rocket Launch 2023. 6. 29.
반응형

컴퓨터 비전공자 Product Manager의 프로그래밍 공부

노마드 코더(Nomad Coders) 강의 필기 노트 입니다.

강의 정보: Dart 시작하기 (https://nomadcoders.co/dart-for-beginners)

Dart Class

Dart에서 가장 집중해서 배워야 할 Main인 Class

class에 대해서 제대로 배우고 문법을 마스터하는게 매우 중요하다.

Property와 method를 정의하는 법

Dart - class, Property와 method를 정의하는 법

function내에서 variable을 사용할때는 var를 사용하고, 타입을 명시할 필요가 없다. 하지만 class를 생성할때는 타입을 꼭 명시해주어야 한다.

class의 값을 수정할 수 없게 하기 위해서는 final을 추가하면 된다.

Constructors

constructor method(생성자 함수)를 만드는 법

DART - constructor method(생성자 함수)
constructor method의 이름은 class의 이름과 같아야 한다.class의 value가 없으면 Error가 발생하기때문에, 추후 정의된다(생성자 함수를 통해)는 의미의 late를 붙여준다. (앞선 강의에서 다룸) late는 class에서 매우 유용하다.첫번째 방식보다 두번째 방식이 훨씬 간편하다. 하지만 함수를 쓸 때와 마찬가지로 class의 순서를 알아야하고 순서대로 입력해야(Positional argument)만 하는 불편함이 존재한다. 이를 해결하기 위한게 Named Constructor 이다.

Named Constructor Parameter

먼저, Constructor method를 중괄호로 감싼다. 그리고 argument들에 변수명을 앞에 붙여준다. 마지막으로 null safety를 위해 Named Constructor Parameters의 default값을 정의해주거나 required(필수값)으로 정의해준다.

 

Tip: 동일한 Data type의 Parameter를 여러번 입력하는게 불필요하게 길게 느껴진다면, 한번에 입력해도 괜찮다.

 

Named Constructor

바로 위에 정리한 Parameter에 이름을 붙여주는 Named Constructor Parameter와는 다르다. 

DART - Named Constructor, Positioanl Constructor

첫번째 이미지는 변수 정의 후 Named Constructor Parameter를 적용한것이고 클래스가 호출될때마다 기본으로 호출되는 기본 Constructor이다.

두번째 이미지 Named Constructor를 적용한 것과 Positional 방식 두가지이다. Player라는 Class에 존재하는 Parameter들을 Named 해주고, 해당 Parameter를 기반으로 조금 다르게 동작하는 또 다른 Constructor인 파란팀 Player를 등록하는 Constructor(생성자)와 빨간팀 Player를 등록하는 Constructor(생성자)를 추가할때, Named 방식과 Positional 방식으로 한 것이다. 사용자가 이름과 나이만 입력하면 나머지 값은 해당 팀과 경험치 0을 적용하여 생성한다.

이때 새로운 문법인 콜론(:)을 이용한다. Player라는 클래스에서 콜론(:) 이전 두가지 항목(name, age)을 입력 받고, 콜론(:) 이후 이 입력받은 것으로 Player의 Parameter 전체(age, name, team, xp)를 어떤 값으로 처리할지 정의한다.

반응형

댓글