나누기 연산자는 int와 double 타입이 나올 수 있음.
int num1 = 10;
int num2 = 20;
int num3;
num3 = num1 / num2;
print(num3);
를 실행시키면 정수 타입으로 정의를 해서 에러가 뜸.
이럴 경우 var num3나 dynamic num3로 하는게 맞음.
Srting의 경우 String str3 = '$str2 World' 이런식으로 더하기 연산자를 써도 되지만 달러($)를 많이 쓰는 듯.
비교 연산은 == 두개를 씀
클래스의 구성요소:
- 필드: 클래스 내부에 선언된 데이터 (변수/상수 등)
- 메서드: 클래스 내부에 선언 된 기능 (함수)
- 생성자*: 클래스 인스턴스를 생성할 때 사용되는 코드, 생성 시 특정 작업을 지시하는 등의 활용이 가능
*생성자를 통해 매개변수를 전달하거나, 클래스 내 필드의 초기값을 설정하는 등의 작업을 할 수 있음.
1.2.7 클래스 실습*** 참고
함수와 메서드 (= 동작에 대한 단위)
기본형태: 리턴타입, 함수명(매개변수parameter) {함수내 동작할 코드}
void는 해당함수를 처리하기 위해 돌려줄 값이 없을 때 쓰임.
분기문: 프로그램이 특정한 상황에 일을 할 지, 안하고 넘길지 (eg. if/else/switch) switch는 최신 버전 다트 3.0에서 바뀜
- case 앞에 변수가 이미 있다고 상정함
반복문: for / for in / while / do - while
- for (기준 변수; 조건식; 가변치) { 조건식이 참일 때 반복할 코드 }
- try catch에서 캐치 뒤에 매개변수로 catch(error, stack) 찍어줌
- finally 문은 예외가 있든 없든 try catch 이후에 실행하고자 하는 코드가 옴
- on 문은 특정 에러를 잡아줄 때 쓰임
: on TypeError catch (e, s) { print(~~~) }
- throw Exception( ) 예외를 만들어서 던짐
비동기 할 때
async / await / Future: 1회만 응답을 돌려받는 경우 (eg. 서버에 요청해서 응답 받는 경우)
async* / yield / Stream: 지속적으로 응답을 돌려받는 경우 (eg. 타이머처럼 시간 계산을 초단위하는 경우)
const vs final
final은 런타임 시 변수할당 되고, const는 컴파일타임에 할당 됨.
[Flutter] UI, Class, Container, Setting, Widget, Theme, Page (0) | 2024.04.22 |
---|---|
[Flutter] 환경설정 (0) | 2024.04.22 |
[TypeScript] const, readonly (0) | 2024.04.16 |
[TypeScript] 개발환경 구축 / tsc컴파일러 (0) | 2024.04.14 |
[TypeScript] 개론 및 개발환경 구축 (OOP/EACCESS: permission denied) (0) | 2024.04.14 |