Advanced Mobile Programming — Terms & Concepts

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/61

flashcard set

Earn XP

Description and Tags

Vocabulary flashcards covering core Flutter concepts, widget categories, navigation mechanisms, state management patterns, asynchronous programming, REST and Web APIs, JSON, and Firebase architecture.

Last updated 4:21 PM on 10/13/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

62 Terms

1
New cards

Design pattern

A reusable blueprint for solving a common problem in software development that provides an adaptable approach or structure rather than a complete code solution.

2
New cards

MVC (Model-View-Controller)

An architectural and design pattern developed by Trygve Reenskaug that separates an application into three logical components: model, view, and controller.

3
New cards

Cross-platform development

Creating software that runs on multiple platforms or operating systems from a single codebase without rewriting code for each one.

4
New cards

Framework

A foundation structure and collection of components or technologies that speeds up application development by providing a template to fit the project.

5
New cards

Dart

A general-purpose, object-oriented programming language developed by Google, characterized by clean syntax, strong typing, and cross-platform compilation.

6
New cards

Flutter

An open-source UI framework created by Google for developing high-performance, cross-platform applications across mobile, web, desktop, and embedded devices from a single codebase.

7
New cards

Basic widgets

Fundamental building blocks in Flutter for displaying content, including Text, Container, Row, Column, Image, and IconButton.

8
New cards

Layout widgets

Widgets that arrange other widgets on the screen, such as Row (horizontal), Column (vertical), and Stack (overlapping).

9
New cards

Material widgets

Android-inspired Flutter widgets that follow Google's design guidelines, such as Scaffold, AppBar, and FloatingActionButton.

10
New cards

Cupertino widgets

iOS-inspired Flutter widgets that follow Apple's design language, such as CupertinoButton.

11
New cards

Custom widgets

Reusable UI components created by extending the Flutter Widget class, such as CustomText or custom dialog builders.

12
New cards

Stack navigation

The most common navigation approach where screens are pushed onto a stack and popped off to return; ideal for linear flows and hierarchical structures.

13
New cards

Tab navigation

A navigation pattern for switching between independent sections, typically utilizing tabs located at the bottom.

14
New cards

Bottom navigation

A navigation structure similar to tab navigation, often featuring a circular layout and animation for a modern feel.

15
New cards

Drawer navigation

A hidden menu that slides in from the side, typically used for less frequently accessed navigation options.

16
New cards

Navigator

The core Flutter widget for managing the navigation stack and transitions between different screens.

17
New cards

MaterialPageRoute

A common route definition for pushing new screens using platform-specific animations suited for Android-style apps.

18
New cards

CupertinoPageRoute

A route definition for pushing new screens that provides Cupertino-style animations for iOS-inspired apps.

19
New cards

Named routes

Routes defined using string names to facilitate easier screen navigation and clean code organization.

20
New cards

Stateless widget

The simplest building block in Flutter that holds no state, maintaining a constant appearance that only changes if its parent rebuilds.

21
New cards

Stateful widget

A widget that maintains and modifies mutable state over time, enabling dynamic UI updates triggered by user interaction, data changes, or events.

22
New cards

createState()

A lifecycle method called when a StatefulWidget is first inserted into the tree; returns a State object holding the widget's mutable state.

23
New cards

initState()

A lifecycle method called immediately after createState() for one-time initialization such as setting state variables or subscribing to streams; called only once.

24
New cards

didChangeDependencies()

A lifecycle method invoked immediately after initState() and whenever the widget's dependencies change, such as an InheritedWidget or locale update.

25
New cards

build()

A lifecycle method called to construct the widget's UI, executing every time state changes or when the widget is rebuilt.

26
New cards

didUpdateWidget()

A lifecycle method called whenever the widget's parent rebuilds and provides new configuration properties to the widget.

27
New cards

deactivate()

A lifecycle method called when a widget is removed from the widget tree but might potentially be reinserted before the current frame ends.

28
New cards

dispose()

A lifecycle method called when a widget is permanently removed from the tree; serves as the final opportunity to release resources like timers and streams.

29
New cards

RestorationManager

The Flutter class in the services library that resolves state loss when an operating system terminates a backgrounded application.

30
New cards

Instance state

Short-term ephemeral state like unsubmitted form fields or active tabs, limited to 1 MB on Android where exceeding it causes TransactionTooLargeException.

31
New cards

Declarative UI

The architectural paradigm in Flutter where UI is constructed to reflect current state, rebuilding elements from scratch rather than imperatively modifying them.

32
New cards

Immutability of widgets

The principle that Flutter widgets do not mutate; instead of calling update methods, a new widget instance is constructed to replace the old one.

33
New cards

Ephemeral state

Short-lived state localized to a specific widget or small UI segment that exists only while mounted, usually managed via setState inside a StatefulWidget.

34
New cards

App state

State shared across multiple widgets or the entire application, usually long-lived, that requires a dedicated management solution like Provider or BLoC.

35
New cards

Lifting state up

The practice of locating state in an ancestor widget above the widgets that consume it, ensuring child widgets only have a single build code path.

36
New cards

InheritedWidget

A low-level Flutter mechanism that allows widgets to efficiently provide data and services downwards to all descendant widgets in the tree.

37
New cards

ChangeNotifier

A class from flutter:foundation that provides change notifications to listeners as an Observable, commonly used to encapsulate application state.

38
New cards

notifyListeners()

The method invoked inside a ChangeNotifier model to notify all listening widgets that state has changed and a UI rebuild is needed.

39
New cards

ChangeNotifierProvider

A widget from the provider package that provides an instance of a ChangeNotifier to its descendants and handles its automatic disposal.

40
New cards

Consumer

A widget from the provider package used to access a provided model, rebuilding only its builder callback subtree when the model changes.

41
New cards

Provider.of with listen: false

A method to read or interact with a provided model without subscribing the calling widget to rebuilds when notifyListeners() is called.

42
New cards

Back-end

The server-side component of an application invisible to users, responsible for APIs, database management, security, and application logic.

43
New cards

Asynchronous programming

A programming style allowing tasks to run concurrently in the background without blocking the execution of the main thread.

44
New cards

Future

An object representing a computation that will finish later, encapsulating an eventual success value or an error.

45
New cards

async

A Dart keyword marking a function as asynchronous, enabling non-blocking execution and implicitly causing it to return a Future.

46
New cards

await

A keyword that halts execution within an async function until the target Future completes and returns its resolved value.

47
New cards

FutureBuilder

A Flutter widget that builds its UI based on the latest interaction snapshot with a Future, updating across various ConnectionState stages.

48
New cards

ConnectionState

An enum representing the current state of an asynchronous operation in Flutter, comprising four values: none, waiting, active, and done.

49
New cards

API (Application Programming Interface)

A software intermediary enabling communication and data exchange between applications, acting as a machine-to-machine interface.

50
New cards

RPC (Remote Procedure Call)

A Web API type that enables client applications to call functions directly on a remote server.

51
New cards

RMI (Remote Method Invocation)

A Web API type that allows client applications to invoke methods on remote server objects.

52
New cards

REST (Representational State Transfer)

An architectural style for distributed hypermedia systems described by Roy Thomas Fielding in 2000, centered on performing CRUD operations on resources.

53
New cards

Six REST constraints

The formal architectural requirements of REST: Client-Server, Stateless, Cache, Uniform Interface, Layered System, and Code-On-Demand.

54
New cards

PATCH

An HTTP method used for applying partial modifications to a resource, distinguished from PUT which updates or replaces the full resource.

55
New cards

JSON (JavaScript Object Notation)

A lightweight, text-based data interchange format created by Douglas Crockford with the media type application/json and file extension .json.

56
New cards

Firebase

A Backend-as-a-Service (BaaS) platform by Google providing pre-built backend services including realtime databases, auth, and analytics.

57
New cards

Cloud Firestore

A flexible, scalable NoSQL cloud database service from Firebase, accessed in Flutter via the cloud_firestore package.

58
New cards

Realtime Database

A Firebase cloud database that stores and synchronizes data across clients in real time using the firebase_database package.

59
New cards

Firebase Cloud Messaging (FCM)

A cross-platform messaging service provided by Firebase for sending push notifications, integrated via the firebase_messaging package.

60
New cards

Trygve Reenskaug

The computer scientist who originally developed the Model-View-Controller (MVC) architectural pattern.

61
New cards

Roy Thomas Fielding

The computer scientist who described the REST (Representational State Transfer) architectural style in his 2000 doctoral dissertation.

62
New cards

Douglas Crockford

The computer programmer who introduced and standardized JSON (JavaScript Object Notation) in the early 2000s.