Logo
Published on

Dart 찍먹하기

Authors
  • avatar
    Name
    헤이즐 Hazel Yu
    Twitter

Dart란?

Dart는 모든 플랫폼에서 빠른 앱을 개발하기 위해 클라이언트에 최적화된 언어다.

Dart의 특징이자 장점은 아래와 같다

Dart 기초 문법

main 함수

void main(){
}
  • ( )로 매개변수 지정해 받아오기 가능

print( ) 함수

void main(){
pring('Hello Hazel)
}

-문자열 콘솔에 출력

다양한 변수 타입

  • var -[기본형식] var 변수명 = 값;

    • 자동 타입추론 기능 제공 -값 변경 가능 , 중복 선언 불가능
  • dynamic

    • 변수의 타입을 자유롭게 선언 가능
  • 상수 final / const

    • final (런타임 상수) - const (빌드타임 상수)
    void main(){
    final DateTime now = DateTime.now();
    const DateTime now = DateTime.now();
    }
    
  • 해당 코드 실행시 const에서 에러가 발생한다 (const는 빌드될 때 값이 확정되기 떄문)

변수 타입

변수타입
string : 문자열int : 정수
double : 실수bool : 불리언

컬렉션

  • 여러 값을 하나의 변수에 저장할 수 있는 타입

List타입

  • 리스트 타입은 여러값을 순서대로 한 변수에 저장할 때 사용된다. 리스트명[인덱스] 형식으로 특정원소에 접근이 가능하다.

add( )

void main() {
List<String> flutterStudy = ['베짱이','Hun','Jake','이지훈'];
print(flutterStudy);
flutterStudy.add('헤이즐');
print(flutterStudy);
}
  • **When ? List에 값을 추가할 때 사용
  • How ? 추가하고 싶은 값을 매개변수에 입력한다.

Where( )

void main() {
final HunflutterStudy = flutterStudy.where(
(name) => name == 'Hun' || name == '이지훈',
);


print(HunflutterStudy);
print(HunflutterStudy.toList());
}
  • **When ?**List에 있는 값을 순회하며 조건을 충족시키는 값만 필터링하는데 사용
  • ** How ?** 매개변수에 함수를 입력하면, 입력된 함수는 기존값을 하나씩 매개변수로 받음. True일시에는 값을 유지하고 false일시 값을 버린다. map()
void main() {
List<String> flutterStudy = ['베짱이','Hun','Jake','이지훈', '헤이즐'];
final allMembers = flutterStudy.map(
(name) => '스터디멤버 $name',
);
print(allMembers);
}
  • List에 있는 값을 순서대로 순회하며 값을 변경 reduce()
void main() {
List<String> flutterStudy = ['베짱이','Hun','Jake','이지훈', '헤이즐'];
final allMembers = flutterStudy.reduce((value, element) => value + ',' + element);
print(allMembers);
}

fold( )

void main() {
List<String> flutterStudy = ['베짱이','Hun','Jake','이지훈', '헤이즐'];
final allMembers = flutterStudy.fold<int>(
0, (value, element) => value + element.length);
print(allMembers);
}

Map 기본

void main() {
Map<String, String> animals = {
'dog' : '강아지',
'cat' : '고양이',
'horse' : '말',
'rat' : '쥐',
 };

print(animals['dog']);
print(animals['cat']);
}

Map 키, 값 반환

void main() {
Map<String, String> animals = {
'dog' : '강아지',
'cat' : '고양이',
'horse' : '말',
'rat' : '쥐',
 };

print(animals.keys);
print(animals.values);
}

Set타입

void main() {
Set<String> flutterStudy = {'베짱이','Hun','Jake','이지훈', '헤이즐'};
print(flutterStudy);
print(flutterStudy.contains('헤이즐'));
print(flutterStudy.toList());

List<String> flutterMems = ['베짱이', 'Hun', 'Jake'];
print(Set.from(flutterMems));
}

Enum

enum Status{
approved,
pending,
rejected,
}
void main(){
Status status = Status.approved;
print(status);
}