Dart 언어 문법 정리 첫번째 이야기

themoon·2022년 1월 24일
0

2021

목록 보기
1/1

플러터(Flutter)를 이용하여 앱 한 번 만들어 볼까? 라는 상상 속에 공부를 하였지만, 군대 내에서의 장벽에 막혀 문법 정리로만 공부를 마치려고 합니다.

Swift 개발자로 IOS 개발을 해왔었는데, Native 성능을 갖추면서 Android와 IOS Application을 동시에 개발할 수 있다는 이점은 다른 언어와의 큰 차이점이자 장점입니다.

장단점을 떠나 생산성이 매우 뛰어나고 Start-Up을 시작하는 단계의 회사에서 주로 사용할 것 같으며, 한편으로는 향후에 유지성이 높은 App이 될 수 있을지.. 라고 많이 고민하게 만드는 언어입니다.

어찌 됐든 오늘은 플러터(Flutter)에 쓰이는 다트(Dart)라는 언어의 기본 문법 기록을 시작하겠습니다. !>!

Start

Dart는 C에 기본 main함수가 있는 것처럼 Dart에도 존재합니다.
그리고 문장에 끝에는 세미콜론(;)을 붙여야합니다.

void main(){
}

또한 Dart는 웹에서 간편하게 다트 문법을 테스트 할 수 있습니다. 플러터를 공부할려고 SDK설치 후에 문법 공부를 하는 것이 아니라, 해당 URL에 접속하여 공부를 하면 됩니다 !

https://dartpad.dev/

기본자료형

✓ int 정수형 (1, 1, 33, ... ) int a = 1;
✓ double 실수형 (0.001 ... ) double b = 123.1;
✓ String 문자열 String str1 = ‘AIR’;
✓ bool 참 또는 거짓을 나타내는 불리언 타입 (true, false) bool a = true;
✓ num int와 double을 포함하는 타입 int a = 44; num n2 = a;

var ; 타입추론 언어

✓ 타입을 명시하지 않아도 초기화 값에 따라 자료형이 정해지게 됩니다.

void main(){
    var a = 1; // int
    var b = 1.1; // double
    var c = “Hello World”; // String 
}

final, const ; 상수

✓ 상수는 값이 변하는 변수와 달리 변하지 않는 값을 나타내기 위해서 사용됩니다.
변수 선언시에 맨 앞에 final 혹은 const 키워드를 붙이면 됩니다.

void main() {
       const int a = 1;
       a = 2; // ERROR
  
       final String str = "Hello World";
       str = "Home"; // ERROR
}

이렇게 상수는 값을 한번 초기화 해놓으면 다른 값으로 변경이 불가능합니다.

주의해야할것,
1. 상수는 선언과 동시에 초기화 되어야 합니다.
const int a; // ERROR
2. final, const 키워드와 var 타입은 같이 사용하지 못합니다.
final var a = 1234; // ERROR

final, const ; 상수의 차이점

✓ Dart 언어에는 const, final 키워드는 둘다 한번 변수에 설정한 값은 다시 재설정을 할수가 없습니다.

const 와 final 은 공통점도 있지만 차이점도 있습니다.

✓ const 는 컴파일 타임에 상수를 설정합니다.

✓ final 은 런타임시에 결정되는 값도 상수로 설정할 수 있습니다.

void main() {
        const DateTime now1 = new DateTime.now(); 
        // ERROR 
        //const 는 실행시에 결정되는 값을 설정할 수 없다. 정해진 값만 가능하다. 
        
        final DateTime nw = new DateTime.now(); 
        // final 은 실행시에 결정되는 값도 설정할 수 있다. 
}

산술 연산자

✓ + 더하기 (문자열 결합 가능) print(“a”+”b”); print(a+b);
✓ - 빼기 print(a-b);
✓ * 곱하기 print(a*b);
✓ / 나누기 print(a/b);
✓ % 나머지 print(a%b);

증감 연산자

✓ 전위 연산 ++a —a
✓ 후위 연산 a++ a++

void main(){
     // 전위 연산
     int a = 1;
     print(++a); // 2
     print(a); // 2

     // 후위 연산
     int b = 5;
     print(b++); // 5
     print(b); // 6
}

✓ 전위 연산자는 연산자가 변수 앞에 있기에 해당 행에서 값을 증감하지만,
후위 연산일 경우, 연산자가 변수 뒤에 있기에 해당 행이 끝나는 표시인 세미콜론(;)을 만남과 동시에 해당 행이 끝나게 되어 증감 연산이 이루어진다. 라고 생각하면 간편함.

비교 연산자

✓ == 같다 print(a == b);
✓ != 다르다 print(a != b);
✓ >, < 크다 작다 print(a > b); print(a < b);
✓ >=, <= 크거나 같다 작거나 같다 print(a >= b); print(a <= b);

논리 연산자

✓ && AND if(a == b && a == 3){}
✓ || OR if(a == b || a == 2){}
✓ ! 부정 bool air = false; if(!air){} // if는 참

주석

✓ 한줄 : //
주석은 어느곳에서든 사용이 가능하고

✓ 여러줄
주석 시작 : /
주석 끝 :
/

// 여기도 주석
void main() { 
/** 이것이 주석. **/ 
// 이것도 주석
          print("Hello World ! "); // 이것도 주석
}
// 여기도 주석

Stop..

글을 쓰는게 막상 쉬운 줄 알았는데 정리하면서 한번 더 배운 것들에 대해 생각해보니 공부 효과 또한 뛰어나네요.
언젠가 플러터를 하는 날을 기원하며 2편에서 나머지 정리하겠습니다.

마지막으로 ! https://dart.dev/guides 공식 문서보고 즐코하세요. (*´∪`)

profile
Swift를 패자

0개의 댓글