Abdullah Fathi
A "tools" that allows you to build native cross-platform (IOS, Android) apps with one programming language and codebase
SDK(Software Development Kit)
Tools to compile your code to native machine code + develop with ease
Re-usable UI building blocks (=widgets), utility functions, packages
Framework / Widget Library
Focused on frontend (mobile apps, web) user interface (UI) development
Object-oriented & Strongly Typed
Syntax is like a mixture of Java, Javascript, c#
Programming language developed by Google
UI as code: build a widget tree
Embrace platform differences
One Codebase
Update Flutter PATH
Install Android Studio
Javascript / React.js
Dart + Flutter
React Native
Flutter
Ionic
Javascript (Any or no Framework)
WebView-hosted Web Apps
Compiled Native Apps
Partly compiled (UI Components) Native Apps
Does compile to IOS / Android UI Components
Does not compile to IOS / Android UI Components
Does not compile to IOS / Android UI Components
Developed by Ionic
Developed by Google
Developed by Facebook
Building a quiz app (hands-on training)
flutter create <project name>
Output & Input (Visible)
Layout & Control (Invisible)
RaisedButton(), Text(), Card(), ...
Drawn ont the screen:"What the user sees"
Row(), Column(), ListView(), ...
Give your app structure and control how visible widgets are drown onto the screen (indirectly visible)
Container()
State is Data/Information used by your app
In General
App State
Authenticated Users
Loaded Jobs
...
Current User Input
Is a Loading Spinner being shown?
...
Widget State
Input Data
Stateful
Stateless
Widget
Renders UI
Data can change (externally)
Gets (re)-rendered when input Data changes
Renders UI
Widget
Input Data
Internal State
Data can change (externally)
Gets (re)-rendered when input Data or local State changes
child (=Content)
Padding
Border
Margin
Container
Running apps on different devices & debugging apps
Widgets, Styling, Adding Logic
There are no secrets to success. It is the result of preparation, hard work, and learning from failure. - Colin Powell