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

(Flutter Study) Dart 언어 - DATA TYPES

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

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

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

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

Data Types

Basic Data Types

Dart - Basic date types

num은 integer와 double의 부모 class이다.

Dart의 Data type은 모든게 object, class로 이루어져 있기 때문에, 실제로 자료형 안에 어떤 게 들어있는지 볼 수 있다.

예를들어 name.을 입력하면 String이 가지는 모든 method가 자동완성되는 걸 볼 수 있다.

Lists

DART - List

대괄호를 열고 콤마로 구분하여 리스트를 입력해주면 된다. Var로 variable을 정의해줘도 되고 List<int>로 해도 되는데, 가능하다면 var를 쓰는게 좋고, var 사용이 불가하거나 class나 그런것을 더 명백하게 하기 위해 자료형을 명시하는 방법을 쓴다.

많은 method가 존재한다. 전부 class로 되어있고 object를 상속받고 있다. List라는 Class가 있고, 이것을 implements 하고 있는데, 여기서 모든 옵션을 볼 수 있다.

예: first = 첫번째 리스트를 가져온다, last = 마지막것을 가져온다. 

Dart에서 List가 멋진 이유는 collection if와 collection for을 지원한다는 것이다. (지원하는 언어가 별로 없다)

Collection if

if(giveMeFive)5 : 'giveMeFive가 true라면 List에 5를 추가해줘'

숫자들로 이루어진 List를 만들고 있는데, if가 사실이라면 list는 5를 갖게 된다. collection if를 사용하지 않을때보다 훨씬 간편하다.

DART - collection if

String Interpolation

DART - String Interpolation

string interpolation은 text에 변수를 추가하는 방법이다. $ 기호 뒤에 변수를 사용해주면 된다. 참고로 Dart에선 "(쌍따옴표), '(따옴표) 상관없다.

DART - String Interpolation, 변수를 계산할때

계산을 실행할 때의 문법은 조금 다르다. $ 기호 뒤에 {변수와 계산식} 을 입력하면 된다.

DART - Text 따옴표 사용시 해결 방법

I'm 부분에 '(따옴표)를 사용하였기 때문에 이경우 "(쌍따옴표)를 이용하거나, '(따옴표) 앞에 \(역슬래시)를 넣어주면 된다.

Collection For

DART - Collection For

for(var friend in oldFriends) "😍$friend"

User Interface를 만들 때 이 기능은 게임체인저이다. User가 로그인을 했는지 안했는지 나타내는 버튼을 추가하고 싶은 경우 등이 그렇다. (? 나중에 알게되면 추가해야지.)

Maps

DART - Maps, Var 

이 변수의 자료형은 Map<String, object>이다. key와 value로 이루어진 자료구조 Map을 만들었는데, Key는 모두 String (name, xp, superpower) value들은 object이다. object는 무엇이냐면 Dart에서는 모든게 object로부터 생겨서 object는 기본적으로 어떤 자료형이든지 될 수 있다. (혹시 TypeScript를 알고 있다면, object는 any로 보면 된다.)

DART - Map<int, bool>
DARAT - Map<List<int>, bool>
DART - List<Map<String, Object>>

Sets

DART - Set

Set과 List의 차이는 Set에 속한 모든 아이템들은 Unique(유니크)하단 것이다. Set은 {중괄호}를 사용하고, List는 [대괄호]를 사용한다. 요소가 항상 하나씩만 있어야 되면 Set을 사용하고, unique할 필요가 없다면 List를 사용하면 된다.

DART - Set에 속한 모든 아이템들은 Unique하다.

Dart에서 List는 Python의 List와 같고 , Dart에서 Set은 Python의 Tuple과 같다. Javascript도 Dart와 같은 Set이 있다.

반응형

댓글