본문 바로가기
Dart

1. 기초

by 히예네 2024. 3. 11.
728x90
반응형

  •  메인함수란?
    • 프로그램의 시작 지점
    • 실행문 끝에는 ; (세미클론)을 찍어야한다.
    void main() {
      // print 함수
      print('Hello world!');
    }
    
  • 변수
    • 변할 수 있는 값. Dart에서 권장하는 변수 선언 방법.
    • var
      • 타입 추론이 가능하다.
      • 코틀린과 비슷.
  • 자료형
    • int, double …
  • Dynamic 타입 활용
    • 모든 데이터타입을 받을 수 있다.
    • 남발하지 않는게 좋다.
    • void main() { String name = 'kim'; name = 'ahn'; print(name); //dynamic type dynamic car = 'hyundai'; car = 10; print(car); }
  • 널 안정성 (Null Safery)란?
    • Null
      • 비어있다. 값이 없다.
      void main() {
        String name = 'kim';
        //String name2 = null; //Erroe! 값이 없다! 
        String? name2 = null; //Erroe! 값이 없다! 
      }
      
      • 값을 비워야하는 상황이라면? or Null이 나면 안되는 경우라면?
    • 널세이프티
      • Null도 가능하고 물론 다른 값들도 넣을 수 있다.
      void main() {
        String name = 'kim';
        //String name2 = null; //Erroe! 값이 없다! 
        String? name2 = null; //Erroe! 값이 없다! 
        print(name2); // print : null
      }
      
    • 널 합류 연산자 ??
      • 엘비스 연산자랑 비슷한데?
      void main() {
        String name = 'kim';
        //String name2 = null; //Erroe! 값이 없다! 
        String? name2 = null; //Erroe! 값이 없다! 
        
        //널 합류 연산자 ??
        String? name3 = null;
        String result = name3 ?? 'dart flutter'; 
        print(result); //dart flutter
      }
      
  • late
    • 늦은 초기화, 선언 시에는 null이지만 나중에 값을 대입하여 초기화한다.
    //late
    late String name; //아직 아무것도 넣지 않음. null
    void main() {
      name = 'kim'; //늦은 초기화
      print(name);
    }
    
  • 상수 : final, const
    • final
      • 최초에 값이 할당 되면 값을 바꿀수없다.
      void main() {
       final int age;
        age = 20; //Error
      }
      
    • const
      • 좀 더 엄격하다. 선언과 동시에 값을 할당해야한다. (해당 값은 컴파일 시점에서 결정되어야만 한다.)
      //처음부터 대입해줘야한다.
      void main() {
       const int age; //Error!
      }
      
      • 컴파일이란?
        • 인간이 이해하는 언어 → 컴퓨터가 이해하는 언어로 변하는 때
      • 런타임 시점보다 빠른 , 컴파일 시점에서 확인하는게 유리하다.
  • 산술연산자
  • 비교연산자
  •  논리연산자
    • void main() { bool result1 = (true || false); print(result1); bool result2 = (true && false); print(result2); bool result3 = !result2; print(result3); }
  • 조건연산자
    • void main() { int age = 30; String ageStatus = age >= 18 ? "성인" : "미성년자"; //3항 연산자 print(ageStatus); // print : 성인 print(age); // 30 }

 

728x90
반응형

'Dart' 카테고리의 다른 글

Dart의 Collection - List, Map  (0) 2024.03.13