inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

마무리

Calendar 앱 프로젝트 StreamBuilder 질문

69

pabeba

작성한 질문수 2

0

마무리 수업에 리스트 개수 화면에 나타낼 때, StreamBuilder를 하나 더 사용하는데 (ListView에도 사용 중)
하나로 합치는게 더 좋을까요 아니면 따로 작성하는게 좋은가요?
중복의 관점에서 생각해 본 것입니다.

flutter 클론코딩

답변 2

0

코드팩토리

안녕하세요!

StreamBuilder 같은 "빌더"군의 경우 값의 변화에 따라 변화하기 때문에 "함께 묶여야 하는 요소인가"를 기준으로 판단하는게 좋습니다. 즉, 코드 구조적 중복의 관점에 한가지 요소에 부가적인 관점에서 봐야합니다.

변수의 변화에 "함께 변화" 해야한다고 판단이 됐더라도 구조적으로 중복이라면 나눌 수 있습니다.

감사합니다!

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. pabeba님.

StreamBuilder를 사용하는 경우, 데이터를 비동기적으로 받아와 화면에 업데이트할 때 매우 유용합니다. 질문해 주신 “StreamBuilder를 하나로 합치는 것이 더 좋은지 아니면 따로 작성하는 것이 좋은지”는 프로젝트의 구조와 성격에 따라 다를 수 있습니다.

  1. 중복을 줄이고 코드 간결화:

    • 하나의 StreamBuilder에서 여러 데이터를 관리하면 코드가 간결해지고 중복을 최소화할 수 있습니다. 그러나 이 경우 각 데이터의 업데이트 시점이 비슷하다는 전제하에 효율적입니다.
  2. 독립적 관리 및 성능 최적화:

    • 각 데이터에 대해 독립적인 StreamBuilder를 사용하는 경우, 각각의 데이터가 갱신될 때 비동기적으로 화면이 업데이트됩니다. 이는 특정 데이터가 자주 변경될 경우, 불필요한 UI 업데이트를 방지할 수 있어 효율적입니다.

이와 관련된 상세한 논의는 다른 질문과 답변에서 확인하실 수 있습니다. 아래의 링크를 참고해 주세요:

각각의 접근 방식이 가지는 장단점을 고려하여 프로젝트의 요구사항에 맞게 결정을 하시면 좋을 것 같습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

198강 BottomSheet 디자인 강좌 이해 돕기

0

12

1

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

0

45

1

SDK 안드로이드 설치 질문!

0

59

1

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

0

92

1

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

0

69

1

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

0

55

1

플레이스토어

0

59

1

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

0

55

1

가이드라인 질문

0

57

0

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

0

76

1

emulator 실행 오류

0

93

3

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

0

71

1

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

0

43

1

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

0

53

1

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

0

63

1

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

0

48

1

이렇게 오류가 떠요

0

63

1

AppBar 사용했는데

0

61

2

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

0

56

1

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

0

63

1

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

0

53

0

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

0

42

1

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

0

62

1

API 관련 이슈

0

85

2