1. 시작전에
1) 플러터로 앱 개발 공부를 시작해야 하는 이유
- 하나의 코드베이스, 다중 플랫폼 지원(안드로이드, IOS, 웹, 윈도우, 맥OS)
: 시간적인 부분에서 많은 이득이 있다
- 빠른 개발과 업데이트
: ex> Hot Reload기능 -> 결과를 즉시적으로 볼 수 있는 기능
- 선언형 UI
: 기존에 UI를 위해서는 안드로이드는 자바 - XML, IOS는 스위프트 - 스토리보드를 공부해야 했음.
선언형UI는 언어 하나만으로 UI를 붙일 수 있어 많은 것을 배워야 한다는 부담을 덜 수 있음.
- 기업 및 스타트업에서의 채용 기회
: 기술개발의 트렌드. 요즘 앱개발시장이 안드로이드, IOS 네이티브 개발자 뿐 아니라
크로스플랫폼 앱개발자 채용 기회가 늘고 있다
- 개발 비용 최소화
: 하나의 코드베이스(ex>Dart)로 많은 플랫폼 출시가 가능하므로 리소스절약, 유지보수면에서 비용절감 가능.
2) Dart언어의 특징
- Dart? 플러터 앱 개발을 위한 크로스플랫폼 개발 언어
- 자바와 유사하면서도 자바스크립트와 비슷한 문법들도 존재함
- 객체지향 프로그래밍
- 프로그램 설치를 하지 않아도 DartPad라는 웹사이트 통해서 간단한 코딩 연습이 가능하다.
2. 기초 문법 과정
1) void main() {}
- 메인함수는 프로그램의 시작 지점을 가지고 있는 함수를 의미한다.
void main() {
}
2) print()
- 콘솔창에 무언가를 출력할 때 쓰는 함수
void main(){
print('Hello World');
}
3) 주석
- // 뒤에 붙는 내용은 코딩실행에는 반영되지 않음. 메모등을 해 놓을 때 사용
4) ;(세미콜론)
- 함수 끝엔 항상 세미콜론 붙여서 항상 닫아줘야 함
5) 변수란? 변할 수 있는 수(=값)를 의미
- 변수를 왜 쓰냐? 값에 대한 의도나 목적을 변수명으로 지정하면 헷갈리지 않음
6) String name = '다트패드';
- '다트패드'라는 문자값을 'name'이라는 변수에 값을 할당(저장)한다. string은 변수의 타입
7) int age = 36;
- 정수형 타입의 숫자는 int로 저장
8) var name2 = '홍길동';
- var 과 string의 차이?
- var는 dart에서 지원하는 기능으로, 변수 값의 타입을 추론하는 문법
- string이나 int를 우선 사용하며 이해도를 높이고, 이후에 var 쓰자
9) bool isChecked = false;
- bool은 True 또는 False 값, 즉 논리를 정할 때 사용한다.
10) double tall = 177.6;
- double은 소수점 값을 표현할 때 사용한다
11) dynamic car = 'benz';
- dynamic type은 모든 데이터 타입을 포함할 수 있는 특수한 데이터 타입이다.
- 예를 들어 String 쓰면, 무조건 문자 타입으로만 해야 한다. 뒤이어 함수에 정수값을 넣으면 에러 뜸.
- 반면, 다이나믹은 아래와 같이 처음에는 문자열로 값을 넣었으나 뒤이어 정수형으로 넣는 등의 사용이 가능하다.
void main(){
dynamic car = 'benz';
car = 300;
print(car)
}
- 다이나믹을 사용할 상황 또는 여지가 있기는 하지만, 사용을 권장하지 않음. 남발하지 않고 정해진거 쓰는게 좋다.
- 반면, var의 경우는 사용을 권장한다.
3. 오늘 입력해본 코드
void main() {
print('Hello World');
String name = '다트패드';
name = '다트패드2';
int age = 36;
var name2 = '홍길동';
bool isChecked = false;
double tall = 177.6;
print(name);
print(name2);
print(age);
print(isChecked);
print(tall);
dynamic car = 'benz';
car = 400;
print(car);
}
'취미노트 > 코딩공부' 카테고리의 다른 글
따라하며 배우는 Flutter 앱 개발입문(6) List (0) | 2023.12.21 |
---|---|
따라하며 배우는 Flutter 앱 개발입문(5) 조건문과 반복문 (0) | 2023.12.17 |
따라하며 배우는 Flutter 앱 개발입문(4) 연산자와 표현식 (0) | 2023.12.07 |
따라하며 배우는 Flutter 앱 개발입문(3) final, const (0) | 2023.12.03 |
따라하며 배우는 Flutter 앱 개발입문(2) Null safety, late키워드 (1) | 2023.11.22 |
댓글