inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

Dart #3 함수형 프로그래밍 (Functional Programming)

final 구문의 용법이 궁금합니다.

331

Swendel

작성한 질문수 2

0

안녕하세요, 알찬 강의 잘 보고 있습니다. 이번 강의 중 질문 사항이 생겨 여쭤봅니다.

 

final newBlackPink = blackPink.map((x){return '블랙핑크 $x';});

이 구문에서, final 과 newBlackPink 사이에 변수 타입(이 경우는 Iterable)에 대한 선언이 있어야하는 것 아닌가? 생각했는데 안 써도 정의가 잘 되더라구요. final을 선언한 이상 변수의 값이 변경되지 않기 때문일까요?

그리고 이런 식으로 Iterable(Set, List 등도) 은 final 로 선언하는 것이 일반적인 용법인지 궁금합니다.

 

감사합니다.

flutter 클론코딩

답변 1

0

코드팩토리

안녕하세요!

final을 사용하는 경우 var을 사용하는 것 처럼 자동으로 타입이 유추됩니다!

원한다면 중간에 타입을 넣어주셔도 상관 없습니다.

Iterable 뿐만 아니라 모든 변수는 가능하다면 const, const가 안된다면 final, 그것도 안된다면 가변 가능한 변수로 선언하는게 좋습니다.

이는 Immutable 프로그래밍의 기본으로 선언한 후 값을 변경 할 수 없도록 하면 로직의 흐름이 더욱 자연스러워지고 깔끔하고 이해하기 편한 코드를 작성 할 수 있습니다.

감사합니다!

198강 (){onTap(e);}의 이해 돕기

0

39

1

video_call 플러그인 설치후 에러 발생

0

47

1

SDK 안드로이드 설치 질문!

0

62

1

코드팩토리 디스코드 링크 다시 부탁드려요~

0

92

1

Webview를 이용해서 URL 상의 페이지 출력 불가

0

71

1

홈스크린 함수를 함축해서 main.dart에 옮기는 문제

0

56

1

플레이스토어

0

60

1

아고라 엔진 init 함수의 반환타입이 Future<void> 이것의 의미는 무엇인가요?

0

56

1

가이드라인 질문

0

59

0

emulator 에러 환경설정 뭐가 문제 일까요??

0

78

1

emulator 실행 오류

0

95

3

Column을 가로방향 최대 사이즈를 차지하도록 하는 방법에 관련

0

73

1

pubspec.yaml에서 font를 추가하면서 weight 값을 지정하는 것이 의미가 있는 것인지 문의

0

44

1

setState()를 호출하지 않으면 build가 실행 안되는 건가요?

0

54

1

video_call 플러그인 설치시 에러문제

0

66

1

children 안의 if 문에서 { } 못쓰는 이유?

0

51

1

이렇게 오류가 떠요

0

66

1

AppBar 사용했는데

0

63

2

[문제해결] '오늘도 출첵!' 의 171번 강의에서 중요한 문제를 발견했습니다

0

58

1

StatefulWidget 실습 에러가 발생합니다.[해결완료]

0

65

1

Video Player 프로젝트에 대한 추가 질문

0

54

0

Row위젯이나 column위젯의 위치는 누가 정하나요??

0

43

1

geolocator 오류때문에 개발진행이 불가능입니다

0

64

1

API 관련 이슈

0

89

2