반응형
Provider Provider는 프로바이더 중에서 가장 기본적인 프로바이더이며, 값을 동기적으로 생성해 줍니다. Provider는 일반적으로 다음과 같은 용도로 사용됩니다. 계산 결과를 캐싱 다른 공급자(Repository또는 HttpClient)에 값 노출 테스트 또는 위젯이 값을 재정의할 수 있는 방법을 제공 select를 사용하지 않고도 프로바이더 및 위젯 리빌드를 줄 일 수 있습니다. Provider를 사용하여 계산 결과를 캐시하기 Provider는 ref.watch와 함께 사용하면 동기식 작업을 캐싱할 수 있습니다. 예를 들면 Todo 목록에 필터를 적용하는 경우입니다. 목록을 필터링하는 데에는 약간의 비용이 발생 할 수 있습니다. 그렇기 때문에 화면을 다시 렌더링될 할마다 Todo 목록은 다..
불변성(Immutability)이란? 불변성(Immutability)은 Object의 모든 필드가 final 또는 late final인 경우입니다. 객체 생성할 때 정확히 한 번만 설정됩니다. 불변성은 여러 가지 이유로 바람직합니다. 참조 평등(reference equality)보다 가치 평등(value equality) 코드 조각에 대한 로컬 추론 멀리 떨어진 코드 조각은 참조(reference)를 통해 바로 아래에서 객체를 변경할 수 없습니다. 비동기 및 병렬 작업에 대한 추론이 더 쉬워집니다. 다른 코드는 작업 중간에 객체를 변경할 수 없습니다. API의 안전성 메서드에 전달하는 내용은 호출자/수신자가 변경할 수 없습니다. copyWith 메서드는 몇 가지만 변경하여 새로운 객체를 만들 때 장황한 ..
오늘날의 세상에는 사회적 규범과 기대에 부합해야 한다는 압박이 많습니다. 우리는 종종 자신의 진정한 모습을 표현하기보다는 특정 틀에 맞추거나 다른 사람을 모방하려고 노력하는 자신을 발견합니다. 하지만 자신의 고유성과 개성을 포용하면 더 만족스러운 삶을 살 수 있습니다. 이번 포스팅에서는 나만의 목소리를 찾고 진정한 나를 표현하는 방법에 대해 알아보겠습니다. 자신의 가치와 신념에 대해 생각해 보세요 자신의 가치관과 신념을 되돌아보는 것부터 시작하세요. 여러분에게 가장 중요한 것은 무엇인가요? 여러분의 원칙과 신념은 무엇인가요? 자신의 가치관을 명확히 이해하고 나면 자신의 가치관에 부합하는 방식으로 자신을 표현하기가 더 쉬워집니다. 자신의 강점과 약점 파악하기 사람마다 고유한 강점과 약점이 있습니다. 자신의..
오늘도 어김없이 푸르른 산빛이 내린다 하늘엔 구름 한 점 없고 바람도 불지 않는다 나만 바라보는 이 세상 정말 아름다운 걸까 불안한 마음을 덮치며 나는 그저 감탄만 한다 "이 세상에 빛나는 것들이 많아 그런데 내 눈엔 오직 하나만 보인다" 그저 그런 생각이 든다 영원히 변치 않을 것 같은 그 아름다움에 빠져든다
프로바이더는 언제 생성되고 언제 폐기될까? 모든 유형의 프로바이더가 가질 수 있는 상태는 동일합니다. Uninitialized(초기화되지 않은 상태) Alive(활성화 상태) Paused(일시 중지 상태) Disposed(폐기 상태) 폐기됨/초기화되지 않음 초기화되지 않거나 폐기된 프로바이더는 상태가 초기화되지 않았기 때문에 메모리를 차지하지 않습니다. 기본적으로 필요할 때 프로바이더의 상태를 생성하는 방법에 대한 정의일 뿐입니다. 이 상태는 UI의 활성 프로바이더 또는 WidgetRef가 읽거나(reads), 구독(watches)하거나, 수신(listens)할 때까지 그대로 유지됩니다 . Creating → Alive 초기화되지 않은 프로바이더를 사용할 때(read, listen, watch) 상태가 ..
ProviderObserver는 ProviderContainer 내에서 발생하는 변화를 모니터링합니다. ProviderObserver를 상속하는 클래스를 작성하고, 메소드를 오버라이드(override)하여 사용합니다. ProviderObserver에는 3개의 메소드가 있습니다. didAddProvider: 프로바이더가 초기화될 때마다 호출됩니다. 노출되는 값은 value입니다. didDisposeProvider: 프로바이더가 disposed될 때마다 호출됩니다. didUpdateProvider: 프로바이더가 알림을 전송할 때마다 호출됩니다. 사용법: ProviderObserver는 didUpdateProvider를 오버라이딩 하여 프로바이더들(providers)의 변화를 로깅할 수 있습니다. // Lo..