1/27
Vocabulary flashcards covering Flutter widgets, lifecycle methods, state management concepts (Provider), asynchronous programming, and REST/JSON API integration.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Stateless Widget
The simplest building blocks in Flutter that do not hold any state, meaning their appearance remains constant throughout their lifetime.
Stateful Widget
Widgets that can maintain and modify their state over time, allowing for dynamic UI updates based on user interactions, data changes, or events.
createState()
A method called when a Stateful Widget is first inserted into the widget tree; it returns a State object which holds the mutable state.
initState()
Called immediately after createState(), this method is used for initial setup like initializing variables and is called only once during the widget's lifetime.
didChangeDependencies()
Called after initState() and whenever the dependencies of the widget change, such as when an InheritedWidget or locale changes.
build()
A method called to construct the widget's UI every time the state changes or the widget is rebuilt.
dispose()
The method called when a widget is permanently removed from the tree; it is the final opportunity to release resources like timers or subscriptions.
RestorationManager
A class in the services library that provides state data to the engine to ensure the app is ready for restoration if the OS kills it while in the background.
Ephemeral State
Also called short-term or UI state, it is local to a specific widget (e.g., text in a field or current tab) and typically managed using setState.
App State
State shared across multiple widgets or the entire application, such as user preferences or a shopping cart, requiring solutions like Provider or BLoC.
TransactionTooLargeException
An error in native code on Android that occurs if the instance state exceeds 1MB.
Declarative UI
The perspective that Flutter builds its user interface to reflect the current state, often involves rebuilding parts of the UI from scratch.
Lifting state up
The practice of keeping state above the widgets that use it, because in declarative frameworks, changing a child widget requires rebuilding it from its parent.
provider
A package that works with low-level widgets like InheritedWidget to provide a simpler way to manage and share state throughout the app.
ChangeNotifier
A simple class in the Flutter SDK that provides change notification to listeners via the notifyListeners() method.
ChangeNotifierProvider
The widget that provides an instance of a ChangeNotifier to its descendants and automatically calls dispose() when the instance is no longer needed.
Consumer
A widget that accesses a provided model and triggers its builder function whenever notifyListeners() is called in that model.
Provider.of
A method to access a model without using Consumer; setting the listen parameter to false prevents the widget from rebuilding when the model changes.
Back-end
The programming side of an application that handles APIs, database management, server-side logic, and security which users do not directly see.
Asynchronous Programming
A coding style where tasks can start without waiting for previous ones to complete, characterized by being non-blocking and event-driven.
Future
An object representing a computation that will eventually produce a value or an error in the future without blocking the main thread.
async
A keyword marking a function as asynchronous, indicating it returns a Future and allows the use of the await keyword.
await
A keyword that pauses the execution of an async function until a Future completes, returning the result of that operation.
FutureBuilder
A widget that builds its UI based on the latest snapshot of interaction with a Future, handling waiting, error, and completed states.
API
An interface for Machine-Machine communication that acts as a middleman for data exchange between different software applications.
REST
Representational State Transfer; an architectural style for distributed systems characterized by constraints like Client-Server, Stateless, and Uniform Interface.
HTTP package
A tool in Flutter for making web requests (GET, POST, PUT, DELETE) that integrates with asynchronous programming models.
JSON
JavaScript Object Notation; a text-based, language-independent data interchange format that is lighter and faster than XML.