# Provider Pattern (Flutter) > Provider, ChangeNotifier, Consumer, Selector, MultiProvider, ProxyProvider - 18 interview questions - Mid-Level - [Interview Questions: Flutter](https://sharpskill.dev/en/technologies/flutter/interview-questions.md) ## 1. What is the main role of the Provider package in Flutter? **Answer** Provider is a wrapper around InheritedWidget that simplifies state management in Flutter. It allows propagating data through the widget tree efficiently without manually passing data through each widget. Provider automatically handles the rebuild of widgets that depend on modified data. ## 2. Which class must be extended to create a reactive data model with Provider? **Answer** ChangeNotifier is the base class for creating reactive data models with Provider. It provides the notifyListeners() method that notifies all subscribed widgets when data changes. Widgets listening to this ChangeNotifier will be automatically rebuilt. ## 3. How to access a Provider instance from a child widget? **Answer** Provider.of(context) allows accessing the Provider instance of type T from any descendant widget. By default, this method creates a dependency that triggers widget rebuild on changes. This is the most direct method to access Provider data. ## 15 more questions available - What is the difference between context.read() and context.watch()? - Which Provider widget should be used to expose multiple Providers to the widget tree? Sign up for free: https://sharpskill.dev/en/login ## Other Flutter interview topics - [Dart Basics](https://sharpskill.dev/en/technologies/flutter/interview-questions/dart-basics.md): 25 questions, Junior - [Dart Language Essentials](https://sharpskill.dev/en/technologies/flutter/interview-questions/dart-language-essentials.md): 15 questions, Junior - [Flutter Fundamentals](https://sharpskill.dev/en/technologies/flutter/interview-questions/flutter-fundamentals.md): 18 questions, Junior - [Widget Lifecycle](https://sharpskill.dev/en/technologies/flutter/interview-questions/widget-lifecycle.md): 20 questions, Junior - [Local Storage](https://sharpskill.dev/en/technologies/flutter/interview-questions/local-storage.md): 20 questions, Junior - [Application Lifecycle](https://sharpskill.dev/en/technologies/flutter/interview-questions/app-lifecycle.md): 20 questions, Junior - [Layouts & Constraints](https://sharpskill.dev/en/technologies/flutter/interview-questions/layouts-constraints.md): 24 questions, Mid-Level - [ListView & GridView](https://sharpskill.dev/en/technologies/flutter/interview-questions/listview-gridview.md): 25 questions, Mid-Level - [Navigation & Routing](https://sharpskill.dev/en/technologies/flutter/interview-questions/navigation-routing.md): 22 questions, Mid-Level - [Basic State Management](https://sharpskill.dev/en/technologies/flutter/interview-questions/state-management-basics.md): 22 questions, Mid-Level - [Networking & HTTP](https://sharpskill.dev/en/technologies/flutter/interview-questions/networking-http.md): 20 questions, Mid-Level - [JSON Serialization](https://sharpskill.dev/en/technologies/flutter/interview-questions/json-serialization.md): 20 questions, Mid-Level - [Local Database](https://sharpskill.dev/en/technologies/flutter/interview-questions/local-database.md): 22 questions, Mid-Level - [Forms & Validation](https://sharpskill.dev/en/technologies/flutter/interview-questions/forms-validation.md): 20 questions, Mid-Level - [Animations](https://sharpskill.dev/en/technologies/flutter/interview-questions/animations.md): 20 questions, Mid-Level - [Firebase Integration](https://sharpskill.dev/en/technologies/flutter/interview-questions/firebase-integration.md): 18 questions, Mid-Level - [Unit Testing](https://sharpskill.dev/en/technologies/flutter/interview-questions/unit-testing.md): 20 questions, Mid-Level - [Widget Testing](https://sharpskill.dev/en/technologies/flutter/interview-questions/widget-testing.md): 18 questions, Mid-Level - [Build & Deployment](https://sharpskill.dev/en/technologies/flutter/interview-questions/build-deployment.md): 16 questions, Mid-Level - [Package Management](https://sharpskill.dev/en/technologies/flutter/interview-questions/package-management.md): 16 questions, Mid-Level - [Memory & Performance](https://sharpskill.dev/en/technologies/flutter/interview-questions/memory-performance.md): 22 questions, Senior - [Streams & RxDart](https://sharpskill.dev/en/technologies/flutter/interview-questions/streams-rxdart.md): 24 questions, Senior - [Advanced State Management](https://sharpskill.dev/en/technologies/flutter/interview-questions/advanced-state-management.md): 26 questions, Senior - [Flutter Design Patterns](https://sharpskill.dev/en/technologies/flutter/interview-questions/flutter-design-patterns.md): 24 questions, Senior - [Performance Optimization](https://sharpskill.dev/en/technologies/flutter/interview-questions/performance-optimization.md): 26 questions, Senior - [Platform Channels](https://sharpskill.dev/en/technologies/flutter/interview-questions/platform-channels.md): 20 questions, Senior - [Custom Painting](https://sharpskill.dev/en/technologies/flutter/interview-questions/custom-painting.md): 22 questions, Senior - [Flutter Application Architecture](https://sharpskill.dev/en/technologies/flutter/interview-questions/flutter-app-architecture.md): 22 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/en/technologies/flutter/interview-questions/provider-pattern