-
[Dart][변수] AOS 개발자가 공부하는 Dart 언어 기초 1Flutter 2023. 7. 5. 12:18
- 시작하며
요즘 구인구직 사이트에 플러터 개발자 채용 글이 점점 늘어나고 있음을 느꼈다. 안드로이드 개발자로서 슬슬 미루고 미뤘던 플러터 공부를 해보고자 한다. Dart 언어를 대략적으로 찍먹을 해보았는데 생각보다 자바와 코틀린과 유사한 점이 많았다. 그만큼 안드로이드 개발자는 서브언어로 가져가기가 유리해 보인다.
본 포스팅은 직접 공부해 보면서 느꼈던 점이나 자바, 코틀린과 다른 점에 대해 정리하는 시간을 가져 보고자 작성하게 되었다.
공부 및 기록 목적으로 작성되었으므로 틀린 점이 있더라도 이해해 주시라 :)
- 변수 타입
타입 설명 예시 int 정수 1,2,3,4,5 double 실수(소수점 값) 1.23 String 문자열 철수는 오늘도
삽질중이다.bool 참, 거짓 true, false var variable의 앞 3자리를 뜻하며,
데이터 타입에 따라 동적으로 타입이 정해진다.var name = '철수'; dynamic 일반적으로 var 타입은 한번 데이터 타입이 지정이 되면 다른 타입으로 변경이 불가능 하나 dynamic 타입은 언제든 변경이 가능하다. dynamic name = '철수';
- 변수 사용 예시
void main() { String name = '독고다이'; int age = 10; double radius = 10.1; String? addr = null; bool status = false; var comment = '독고다이'; var birthday = 20200101; var friendCount = null; name = '이름을 바꾸어보자'; print('name : $name'); print('age : $age'); print('radius: $radius'); print('addr: $addr'); print('comment: $comment'); print('birthday: $birthday'); print('friendCount: $friendCount'); print('status: $status'); } /** 결과 - name : 이름을 바꾸어보자 age : 10 radius: 10.1 addr: null comment: 독고다이 birthday: 20200101 friendCount: null status: false **/
- null 이란?
- null이란 아직 데이터가 지정되지 않은 상태를 의미
- 좀 더 명확히 얘기를 하자면 메모리의 특정 영역에 데이터를 저장할 준비만 되어 있는 상태를 의미한다.
- 공백이나 빈값과는 다르다.
- nullable - null이 될 수 있다는 것을 의미
- non-nullable - null이 될 수 없다는 것을 의미
- null - 아무런 값도 없다.
- ?, !
- 코틀린에서 익히 사용하는 변수에 null을 허용할 때 ? 를 사용하는데 Dart언어도 String? str = null; 이런 식으로 사용 가능하다.
- ! 는 코틀린에서 사용하는 null이 아님을 확정할 때 사용하는 !! 와 동일한 역할을 수행한다.
- 언어별 선언 방식
- 아래 표를 보면 알겠지만 자바만 null에 너무 관대하다. 그리하여 nullPointerException을 수도 없이 만날 수 있고 이로 인해 if문으로 null 체크를 별도로 해야 한다던지 Optional 등을 별도로 또 써야 한다. (우엑)
- Kotlin과 Dart 언어는 null 이 꼭 필요할 때만 사용하고, 그렇지 않은 변수는 무조건 데이터가 있음을 명시적으로 지정할 수 있다.
type Java Kotlin Dart null을 혀용 할 때 String str = null; var str:String? = null String? str = null; null이 아님을 확정 - str!! str! [다음 글]
2023.07.06 - [Flutter] - [Dart][조건문] AOS 개발자가 공부하는 Dart 언어 기초 2
[Dart][조건문] AOS 개발자가 공부하는 Dart 언어 기초 2
조건문이란? 예를 들어 엄마가 아들을 위해 식탁에 초콜릿 과자와 고구마를 차려 놨다. 아들이 집에와서 초콜릿과자를 먹을지 고구마를 먹을지 고민해보지도 않고 초콜릿과자를 먹는다. 이런
tokkoutai.tistory.com
'Flutter' 카테고리의 다른 글
[Dart][반복문<for문>] AOS 개발자가 공부하는 Dart 언어 기초 6 (0) 2023.07.10 [Dart][산술 연산자] AOS 개발자가 공부하는 Dart 언어 기초 5 (0) 2023.07.07 [Dart][증감 연산자] AOS 개발자가 공부하는 Dart 언어 기초 4 (0) 2023.07.07 [Dart][조건 연산자] AOS 개발자가 공부하는 Dart 언어 기초 3 (0) 2023.07.06 [Dart][조건문] AOS 개발자가 공부하는 Dart 언어 기초 2 (0) 2023.07.06