# 이곳에 쓴 내용은 앱 만들기라는 버킷리스트를 달성하기 위해 플러터를 공부하면서 정리하고 있는 내용입니다.
플러터에 대해 아는 것이 거의 없기 때문에 정리하면서 오류가 있을 수 있습니다.
오류를 발견하신 분은 댓글 남겨 주시면 감사하겠습니다.
final, const
final과 const는 한 번 지정된 값을 변경하지 못함.
아래는 아직 이해를 못 하는 내용이지만 나중에 이해를 돋기 위해서 정리를 해 본다.
const는 컴파일타임에 값이 지정되어 있어야 하고, final은 런타임에 값이 지정되어 있어도 된다고 함.
다트 언어는 사람이 읽기 편한 형태(누가 그래?!)이고, 이것을 컴퓨터가 읽기 편한 형태로 변환해 주는 과정을 컴파일이라고 이해함.
final은 런타임 값을 가질 수 있어서 작동을 하지만, const는 작동을 안함. 컴파일하는 순간의 값이 뭔지 모르기 때문에 값을 지정할 수 없다는 의미로 일단 이해함.
일단, 초보는 이 정도 차이가 있다는 정도만 알고 있으라고 함.
Operator
%는 나누기 후 나머지를 구할 때
++ 는 +1과 같고, --는 -1과 같음. 1씩 증가 시키거나 1씩 감소시킬 때 사용
다트에서 제공하는 operator 설명.. 그냥 있는 줄만 알고 넘어가야겠다.
?? 는 지정된 값이 없을 경우 값을 주어진 값을 넣어라 라는 의미라는데, 일단, 오류가 나온다. 값이 이미 지정되어 있으니 넣을 수 없다는 의미 같다. 버전이 업이 되면서 발생된 오류인 거 같다.
'+='는 더한 후에 변수에 더하기 된 값을 넣음. 빼기, 곱하기도 같음. 단, 나누기를 했을 때는 나눈 값을 double(실수)로 인식을 하기 때문에 int로 지정된 상태에서는 오류가 남. 우리가 계산해서 2/2 해서 1이 나오더라도 안됨. 그냥 나누기의 값은 실수로 인식하도록 프로그램되어 있음.
double로 지정하면 오류없이 작성됨.
비교 연산자는 수학에서 배운 것과 같다. 다만, '=='의 의미는 비교해서 값이 같다는 의미이고, '!='는 값이 같지 않다는 의미임. 그래서 1 == 2 일 경우 불리언 값이 거짓으로 1 != 2는 참으로 나왔다.
is 다음에 변수타입을 물어볼 수도 있음. 여기에 !를 붙이면 부정의 의미이기 때문에 참값이 나왔음.
논리 operator는 and는 &&(조건 모두를 만족해야 함.)를 쓰고, or는 ||(조건 중 하나만 만족해도 됨)를 씀.
https://dart.dev/language/operators
점점 어려워져서 여러번 반복해서 듣고 있다.
'버킷리스트 > 앱 만들기' 카테고리의 다른 글
오공완(with 코드팩토리) #14, #15 (enum, function) (0) | 2024.06.11 |
---|---|
오공완(with 코드팩토리) #12, #13 (if, switch, for, while) (0) | 2024.06.10 |
오공완(with 코드팩토리) #8, #9 (Map, 변수 선언 약속) (0) | 2024.06.08 |
오공완(with 코드팩토리) #6, #7 (var, dynamic, List) (1) | 2024.06.07 |
오공완(with 코드팩토리) #1, 2, 3, 4, 5 (var, int, double, String, Boolean) (1) | 2024.06.05 |