반응형
Dart 언어란
- 구글이 멀티 플랫폼에서 동작되도록 하는 앱을 위해 디자인된 프로그래밍 언어
Dart 언어의 특징
- Dart는 main()으로 시작됩니다
- Dart는 어디에서나 변수를 선언 및 사용할 수 있습니다
- Dart는 모든 변수가 객체(Object) 입니다 // Ex) 함수, 숫자, 널 모두 객체로 취급함
- 자료형에 엄격한 언어(Typed언어), 변수에 지정한 자료형만 저장해야함 하지만 dynamic 자료형은 여러 자료형 허용
- List<int>,List<dynamic>과 같은 제네릭 타입을 허용
`List list = [1, 2, '3', true, false];` => `[1, 2, 3, true, false]` - Dart는 public, protect 같은 키워드(접근 지정자)가 없습니다
대신 함수앞에 _ 를 붙임으로서 DartPage 단위로 정의할수 있습니다 // Ex) _funtion() - 변수나 함수의 시작은 언더스코어(_) 또는 문자열로 시작하고 그 후에 숫자를 입력할수 있습니다
- Null safety를 지원합니다 2.0에서 새롭게 추가된 기능입니다
- 명령 단위는 세미콜론(;)으로 끝난다.
기초 문법
주석
//주석
/**
주석
**/
Hello World 출력하기
void main() {
print('Hello World');
}
자료형 및 변수선언
void main() {
// 정수형 선언
int number1 = 17;
print(number1);
int number2 = 17 ~/ 4; //나누기
print(number2); // 4
int number3 = 17 % 4; //나머지
print(number3); // 1
//실수형 선언
double pi = 3.14;
print(pi); //3.14
//불리언 선언
bool visible = true;
print(visible); //true
//리스트
List array = [1, 2, 3];
print(array);
print(array[1]);
//맵 Map Key:value
Map snack = {'name': '포카칩', 'price': '1600'};
print(snack); // {name: 포카칩, price: 1600}
}
int, double은 num type의 하위 집합이라 num으로 선언 가능
var 타입 추론
- 변수 지정시 자료형을 써주지 않을시 처음 선언한 값이 데이터 타입이 된다.
- 일반적으로 많이 사용
void main() { var test = 25; print(test); test = 13; test = '나이'; //Error 발생 }
final과const
- 공통점
- 값을 한번만 선언 할 수 있다.
- final, const 뒤에 타입을 명시해 주지 않아도 자동으로 자료형이 추론된다.
- 차이점
- const의 경우 상수를 정의할수 있다. 즉 런타임에서 정의되는 값 설정 불가 // Ex) DateTime.now()
void main() { final DateTime now = DateTime.now(); // 정상 작동 const DateTime now = DateTime.now(); // 에러 발생 }
- const의 경우 상수를 정의할수 있다. 즉 런타임에서 정의되는 값 설정 불가 // Ex) DateTime.now()
타입 검사
- is를 사용해서 검사
함수int a = 4; print(a is int); //true print(a is! int); //false
- 코드의 묶음 단위
- 입력받는 문자 : 매개변수 parameter
- 실제로 받는 값 : 인수 argument
- 반환값 : Return
- 변수 삽입 방법
- 변수 앞에 $를 붙여 문자열 내에 변수 삽입 가능 또한 ${} 를 사용해 표현식 입력 가능
String name = '홍길동'; num age = 21; void main() { print('$name은 ${age}살 입니다'); 홍길동은 21살 입니다 print('$name은 ${2022 - age + 1}년에 태어났습니다'); 홍길동은 2002년에 태어났습니다 }
- 변수 앞에 $를 붙여 문자열 내에 변수 삽입 가능 또한 ${} 를 사용해 표현식 입력 가능
익명 함수
- ([인수명]) { [동작 or Return 값] }
(number) { return number % 2 == 0; };
람다식
(number) => number%2 == 0;
분기와 반복
- 조건문
if (조건) { 실행문 } else if (조건) { 실행문 } else{ 실행문 }
- 반복문
for (var i =0; i<10; i++){ print(i); }
반응형
'[FrameWork]Flutter' 카테고리의 다른 글
[FireBase] 파이어베이스 CLI 설치하기 (0) | 2022.12.06 |
---|---|
[Flutter]플러터에서 파이토치 사용해서 이미지 분류하기_2(pytorch_mobile) (0) | 2022.12.06 |
[Flutter]플러터에서 파이토치 사용해서 이미지 분류하기_1(pytorch_mobile) (2) | 2022.12.06 |
[Flutter] Image_picker 갤러리, 카메라에서 사진 선택하고 보여주기. (0) | 2022.12.05 |
[Flutter]플러터_설치하기_01 (윈도우) (2) | 2022.09.20 |