Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Natively Fluttering in the hybrid world

Natively Fluttering in the hybrid world

Flutter has been around for a while, and it’s getting huge and real.

But what is it? What does it make it so special?

We’ll explore the Flutter architecture and its difference with the mainstream hybrid solutions.
Walking together through the YANA app, we’ll explore what are some commonly used widgets, used to build layouts at super speed, how hot reloading our app makes really smooth our workflow.
Going further, we’ll see how to keep ourselves synced thanks to the firebase plugins, which make authentication and database work super easy, and to save little pieces of data on board easily.
Common basic widget are not the only widgets we’ll see, as we’ll see some more advanced stuff that we can use to easily build UI accordingly to the network state.

Avatar for Antonello Galipò

Antonello Galipò

February 07, 2019

More Decks by Antonello Galipò

Other Decks in Programming

Transcript

  1. About Flutter •Open source •Fast development •Expressive and flexible UI

    •Native performance •Easy to learn •Full of community plugins
  2. Widget tree in React Native •Virtual widget tree of native

    widgets •Realm switch for synchronisation
  3. The Flutter solution •Reactive-style views •Views are inside the Flutter

    realm •Compiled to native •Platform channels
  4. What is a widget? • A widget is an object

    which gets rendered • Can be either Stateless or Stateful • Almost everything is a widget in Flutter!
  5. Row

  6. Cool IDE features • Widget stubs • Widget shortcuts for

    wrapping, swapping and removing • Widget inspector • Widget tree (only in Android Studio)
  7. What does YANA do? • Sign in with Google •

    Create a note and save it to the cloud • Edit a note • Delete a note
  8. Plugins for YANA • firebase_auth: easy third party authentication •

    google_sign_in: easy login with google • cloud_firestore: interaction with the Firebase Firestore database • flutter_signin_button: out of the box third party sign-in buttons • shared_preferences: easy data persistence on board
  9. Stream Builder •Connects to a Stream •Listens for changes in

    the stream •Builds the widget accordingly to the stream variations
  10. Future Builder • Watches a Future • When the Future

    has completed, builds the Widget accordingly