본문 바로가기
개발/Flutter

Flutter 기초다지기 - Dart 1.

by ThisisZero 2023. 11. 22.
반응형

플러터를 구성하는 개발언어 다트

플러터는 다트를 사용하고 있습니다.

Dart(다트)는 구글이 멀티플랫폼에서 작동하느 앱을 위해 만든 프로그래밍 언어입니다 Flutter(플러터)는 이 언어를 기반으로 구성되어있기 때문에 플러터 개발을 위해 다트는 필수적으로 공부해야 하는데요, 다행히도 이 언어의 목적 중 하나가 프로그래머들에게 '자연스럽게 다가가는 것'이라서 난이도는 프로그래밍 언어 중에서 쉬운 편이라고 할 수 있습니다.

인터넷만 있다면 언제 어디서나 공부할 수 있는 DartPad

VSCode나 안드로이드 스튜디오 같은 개발 툴이 없어도 다트로 코딩해보고 실행할 수 있습니다. 바로 DartPad라는 사이트인데요, 인터넷만 사용할 수 있으면 언제 어디서나, 심지어 스마트폰으로도 다트 언어 공부가 가능합니다.

DartPad - 언제 어디서나 Dart를 공부하세요

왼쪽 화면에서 코딩을 하고 파란색 'Run'버튼을 누르면 오른쪽 Console창에 결과값이 나오고, 만일 코딩이 잘못되었으면 오른쪽 아래 Documentation 항목에서 어떤 부분이 잘못되었는지 설명을 해 줍니다. 다트 언어를 공부하고 연습하기에 정말 좋은 환경이니, 시간 날 때마다 DartPad로 공부해 보시는 건 어떨까요.

다트 언어 기본 - 변수

변수란 프로그램 내에서 어떠한 값을 지정하고, 필요할 때 다시 불러오기 위한 암호 같은 거라고 생각하시면 됩니다. 예를 들어, 'Visual Studio Code'라는 문자를 필요할 때마다 반복해서 쓰는거 보다, 'vsc'라는 변수로 지정을 하고 프로그래밍을 하면, 프로그램을 실행하는 컴퓨터에서는 'vsc'라는 변수를 보면 자동으로 'Visual Studio Code'라는 문자로 이해하고 실행한다고 생각하시면 편할 겁니다. 변수는 아래와 같이 지정할 수 있습니다

var hgd = '홍길동'

여기서 var는 variable의 줄임말이며, 한국어로 하면 '변수'입니다. Dart에서는 변수를 선언한다는 의미입니다. 여기에서는 'hgd'라는 변수를 선언한다는 의미이며, 변수 'hgd'의 값은 '홍길동'이라는 문자열로 지정하겠다는 의미입니다. 이렇게 선언을 하고 나면, 나중에는 hgd를 입력할 때 프로그램에서는 '홍길동'이라는 문자로 받아들이게 됩니다. DartPad에서 이렇게 작성해 보세요.

main() {
    var dev = '작심삼일 개발일기'
    print(dev)
}

여기서 main() 은 Dart를 처음 시작할 때 호출하는 약속된 함수라고 생각하시면 됩니다. DartPad에는 기본적으로 main()이 선언되어 있기 때문에 앞으로는 생략하고 안쪽 코드만 작성할 건데, 만약에 DartPad에 main()이 선언되어있지 않다면 미리 작성 하시고 {} 안에 다트 코드를 입력해 주세요.

위와 같이 코드를 작성하고 Run 버튼을 눌러 실행해 주시면 오른쪽 Console 창에 아래와 같이 나올 겁니다.

작심삼일 개발일기

위 코드를 해석해 보자면, var 를 이용해 dev라는 변수를 선언했고, 그 값을 '작심삼일 개발일기'라는 문자로 지정 했다는 의미입니다. 또한 아래의 print(dev)는 콘솔창에 dev라는 변수를 출력하라는 의미로 dev의 현재 값인 '작심삼일 개발일기'를 출력하게 된 겁니다.

변수는 한번 선언하면 다시 선언할 수 없습니다.

var blog = '작심삼일'
var blog = '개발일기'

위 코드를 입력하면 오류가 발생하는데 이 경우에는 이미 한번 blog라는 변수를 선언했기 때문입니다. 변수의 값을 변경하려면 아래와 같이 var를 생략하면 됩니다.

var blog = '작심삼일'
print(blog)

blog = '개발일기'
print(blog)

//Console 결과값
작심삼일
개발일기

위 코드는 처음에 blog라는 변수의 값을 '작심삼일'이라는 문자로 지정한 다음 print를 통해 콘솔창에 출력하도록 하였고, 이후에 blog 값을 '개발일기'로 바꿔서 다시 print 하도록 명령했기 때문에 첫번째 줄에는 작심삼일, 두번째 줄에는 개발일기를 출력하게 됩니다. 변수를 선언할 떄에는 아래와 같은 규칙이 있습니다

  1. 영어/언더바(_)/달러($)/숫자만 사용 가능하다
  2. 숫자는 첫번째 글자가 될 수 없다.
  3. 카멜케이스(camelCase)를 사용한다

카멜케이스란 직역하면 '낙타 표기법'이라고 하는데요 띄어쓰기 없이 단어를 구별하기 위해 두번째 단어부터 첫 글자를 대문자로 작성하여 마치 낙타의 혹과 같은 모양으로 보여서 이러한 명칭으로 불리게 되었습니다. 지정할 변수가 많아지게 되면 결국 여러 단어를 합쳐서 변수명으로 지정하게 되는데 띄어쓰기를 할 수 없기 때문에 단어를 구분짓기 위한 방법으로 카멜케이스, 스네이크케이스 등이 있는데 아래와 같은 방식으로 표기합니다. 

tistory blog post //띄어쓰기
tistory_blog_post // 스네이크 케이스
tistoryBlogPost // 카멜 케이스

다트의 경우 변수를 지정할 떄에는 카멜 케이스를, 프로젝트와 파일명을 작성할 때는 스네이크 케이스를 사용하고 있습니다. 사실 변수명을 스네이크 케이스로 작성해도 실행에 오류는 발생하지 않습니다만, 콘솔 창에 카멜케이스로 바꿀 것을 계속 권장하므로 변수명은 카멜케이스로 작성해 주세요.

오늘은 플러터의 기반 언어인 다트를 공부하기 위한 DartPad와, 다트 언어의 기초인 변수 선언에 대해 작성했습니다. 다음 포스팅에서는 변수의 종류에 대해 알아보도록 하겠습니다

감사합니다

반응형