[ Dart ] Dart 시작하기 #1.0 ~ #2.5

·2023년 10월 31일
0

Mobile-Software

목록 보기
7/15
post-thumbnail

웹에서 Dart 사용



📍 Hello world

Dart 는 main 함수가 꼭 필요하고, 코드 끝에 세미콜론(;) 붙여주기

void main() {
  print('hello world');
}

📍 VARIAVLES

1.1 The Var Keyword

  1. 명시적 타입 선언
    클래스에서 변수나 속성 선언할 때에 타입 지정
void main() {
	String name = 'ekkk';
    name = 'dart';
}
  1. 묵시적 타임선언
    var -> 관습적으로 함수, 메소드 내부에 지역 변수 선언할 때 사용
void main() {
	var name = 'ekkk';
    name = 'dart';
}

1.2 Dynamic Type

타입 체크 하지 않고 런타임에 객체의 타입을 결정
변수 선언 후에도 다른 타입의 값 할당 가능
dynamci type 으로 선언된 변수는 조건문으로 타입을 확인할 수 있음

void main() {
	dynamic name = 'ekkk';
    name = 'dart';
}
void main() {
	dynamic name;
    if (name is String) {
    	//////
    }
}

1.3 Nullable Vaiables

null safety -> null 값을 참조할 수 없도록 하는 것
변수타입 뒤에 ?를 붙여주면 null 을 허용할 수 있음
-> name 은 String 일 수도 있고, null 일 수도 있음

void main() {
  String? name = 'dart';
  name = null;
  if(name!= null){
    name.isNotEmpty;
  
  // if 문 코드 단축ver
  name?.isNotEmpty;
  }
}

1.4 Final Vaiables

한 번 정의된 변수를 수정할 수 없게 만들기 위해서는 -> final 키워드

void main() {
   // 타입은 생략 가능
  final String name = 'dart';
  // 변수 수정 불가 -> 오류 발생
  name = 'flutter';  
}

1.5 Late Variables

late -> 초기 데이터 없이 변수 선언 가능하게 해줌
값을 할당하기 전에 접근하면 안됨

void main() {
  late final String name;
  // do something
  name = 'dart';
  print(name);
}

1.6 Constant Variables

dart 에서의 const 는 compile-time constant 를 만들어줌
final 과 마찬가지로 한 번 선언되면 수정 불가
compile-time 에 알고 있는 값이어야함
=> 컴파일할 때 값을 알고 있는 변수를 만드는 방법

앱스토어에 앱을 올리기 전에 값을 알고 있다면 => const
어떤 값인지 모르거나 그 값이 API 로부터 오거나 사용자가 입력해야 하는 값일 경우 => final / var

⚠ final VS const



📍 DATA TYPES

2.0 Basic Data Types

- num

num 을 선언할 경우 정수형 실수형 상관없이 숫자형 데이터를 선언
int 와 double 의 상위개념

void main() {
  num x = 1;
}

- Int, Double

정수는 int 타입으로 표현하고, 실수는 double 타입으로 표현

void main() {
  int y = 2;
  double z = 3.0;
}

- String

문자열을 표현하는 타입으로 큰따옴표 혹은 작은따옴표로 표현

void main() {
  String name = 'dart';
}

- Bool

불리언은 true 또는 false 값을 가짐

void main() {
  bool isValid = true;
}

2.1 Lists

void main() {
  var numbers = [1,2,3,4];
  numbers.add(0);
}

  • collenction ifcollection for을 지원
void main() {
  var addFive = true;
  var numbers = [
    1,
    2,
    3,
    4,
    if(addFive) 5
  ];
}



2.2 String Interpolation

text 에 변수를 추가하는 방법



2.3 Collection For

코드 내에서 for 문을 사용하여 다른 리스트를 반복문으로 호출하여 기존 리스트에 새롭게 추가



2.4 Maps

key(왼) 와 value(오) 로 이루어져 있음

void main() {
  var player = {'name': 'Kim', 'xp': 19.99, 'superpower': false};

  // 빈 Map 선언
  // <왼> -> key 타입, <오> -> value 타입
  Map<int, bool> player2 = {1: true, 2: false, 3: true};

  Map<List<int>, bool> player3 = {
    [1, 2, 3]: true,
    [4, 5]: false
  };
}



2.5 Sets

Set 은 List 와 달리 set 에 속한 모든 아이템들은 유니크함
=> 중복값을 허용하지 않음
=> 요소가 항상 하나씩만 있어야 할 경우에 사용




📚 노마드 코더 < Dart 시작하기 >


0개의 댓글