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

Flutter Masterclass

Flutter Masterclass

Presentation for Flutter Masterclass that was presented for Google Developers Kejar chapter Malang. This was presented as part of offline meetup.

Adi Nugroho

November 26, 2018
Tweet

More Decks by Adi Nugroho

Other Decks in Programming

Transcript

  1. FLUTTER ▸ Dart ▸ Run on top of SKIA Engine

    (Compiled to NATIVE code) ▸ Reactive Views ▸ Hot-Reload ▸ Support Android Studio, VS Code, Intellij IDEA
  2. DART ▸ Looks like JAVA (need semicolon ;) ▸ Have

    Lambda / Anonymous Function // more than 1 line (x, y) { fungsiA(x); fungsiB(y); } // 1 line (x, y) => fungsiC(x, y);
  3. DART - UNIQUE FEATURES ▸ File name is using lower_snake_case.

    ▸ Private variable & method start with _ ▸ Comma can be used in the end of array & parameters to mark the end of line. var array = <int>[1,2,3,]; fungsiA(1,2,);
  4. DART - UNIQUE FEATURES ▸ Optional arguments is placed inside

    curly braces. void fungsiA(int x, {String nama, String alamat}) { } fungsiA(10, nama: "Adi");
  5. DART 2 ▸ Standard in current Flutter version. ▸ Without

    NEW keyword ▸ Implicit typing var array = <int>[1,2,3,]; var str = "Hello"; var widget = Text("Hello World!");
  6. DART 2 ▸ String interpolation var str = "${variable} punya

    saya”; ▸ We will learn it along the course.
  7. COMPONENTS = WIDGET ▸ Everything is a widget. ▸ Text,

    Row, Column, Scaffold, ListView, Button, … ▸ What to render is inside build function.
  8. ROW

  9. LISTVIEW ▸ (Only) ListView with children = Column inside ScrollView

    ▸ ListView Builder = ListView / RecyclerView / UITableView — dequeue & reusability
  10. NEXT ▸ State Management ▸ BloC ▸ FlutterRedux ▸ ScopedModel

    ▸ MVP , BloC ▸ flutter.io ▸ PlatformChannel ▸ Signing for android & iOS