플러터 시작을 위한 Dart 언어 기본

최정석·2023년 11월 17일
0
post-thumbnail

회사 웹 기능 개발에 큰 기능들이 거의 완료돼서
유지보수와 플러터 쪽 스터디를 병행하기로 했습니다!
앱 개발 영역도 꼭 해보고 싶었기 때문에 이 시간이 너무 감사하네요!


변수와 타입

정수타입 int

실수타입 double

Boolean타입 bool

문자열타입 String

  • 더하기 가능
  • print('${name} ${name2}'); 가능

var과의 차이

  • var은 오른쪽 값을 유추해서 타입을 지정
  • 변수.runtimeType => 타입 유추
  • var로 다 선언하면 혼동이 올 수 있음
  • 직접 타입의 명시가 좋음

dynamic 타입

  • var타입과 비슷
  • 차이점은 var타입은 선언과 동시에 타입을 변경할 수 없음
  • dynamic은 재할당 시 타입의 변경이 가능함

List 타입 제너릭 타입 사용

  • ['제니', '지수', '로제', '리사']
  • .add() 로 요소 추가
  • .remove() 로 요소 삭제

Set 타입

  • Value만 들어가는 객체
  • 중복 값 알아서 처리
  • 메서드는 List 타입과 같음

Map 타입 제너릭 타입 사용

  • js 객체와 비슷
  • ex) Map<String, String> dictionary = {'Harry': '포터'}
  • Key와 Value 둘다 타입 지정
  • .addAll({}) 로 요소 추가
  • .remove(Key) 로 요소 삭제
  • dictionary['Harry'] 로 value 가져오기
  • dictionary.keys 로 key값 모두 가져오기
  • dictionary.values 로 value값 모두 가져오기

nullable한 변수

  • String? name = null

null 이 할당될 수 있는 변수를 non-nullable 하게 만들기 !

  • String? name = '2'
  • print(name!)

final 변수 선언

  • 값 재할당 불가

const 변수 선언

  • 값 재할당 불가

const와 final의 차이

  • const는 빌드타임에 값을 알고있어야함
  • ex) Date.now() 는 실행될때 값이 할당이 돼서 final만 사용할 수 있음

??

  • number ?? = 3.0
  • 변수 number가 null 이면 3.0으로 할당해라

==

  • 양쪽이 같은가

!=

  • 양쪽이 다른가

is type

  • number1 is int
  • 변수가 int 타입인가

is! type

  • 위와 반대

변수와 타입을 학습하면서
자바스크립트를 처음 배울 때가 생각이 많이 났습니다.
예전부터 프로그래밍 언어 하나를 배워두면 다음 학습할 언어는 조금 더 이해하기 쉬울거다 라는
말을 많이 들었는데 정말 그런 것 같아요.
자바스크립트는 이랬는데 다트는 이렇구나? 라는 식으로 머리에 들어오더라구요!
앞으로 더 열심히 해서 앱과 웹 모두 잘 다루는 개발자가 되겠습니당~~

0개의 댓글