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

Web Apps mit Flutter

Jörg Neumann
September 16, 2021

Web Apps mit Flutter

Jörg Neumann

September 16, 2021
Tweet

More Decks by Jörg Neumann

Other Decks in Technology

Transcript

  1. JÖRG NEUMANN THEMEN  Frontend Technologies  Mobile Development 

    Machine Learning  Consulting, Coaching, Training KONTAKT  Mail: [email protected]  Twitter: @joergneumann  GitHub: https://github.com/joergneumann  Blog: http://www.headwriteline.blogspot.com
  2. FLUTTER STRATEGIE  Ein einheitliches App Modell für nahezu alle

    Device Typen  Das neue App Modell für Android & Fuchsia PLATTFORMEN  Mobile: iOS, Android  Desktop: Windows, MacOS, Linux  Web: WASM-basiert OPEN SOURCE  Contributions u.a. von Microsoft und Toyota
  3. WAS IST FLUTTER? BACKGROUND  Open Source-Projekt von Google 

    Apps auf einer Source Code Basis entwickeln  React-style Framework FEATURES  Native Performance  Mächtiger UI-Stack  Material Components  Hot Reload
  4. DEVELOPMENT DEVELOPMENT TOOLS  Android Studio  IntelliJ IDEA 

    Visual Studio Code  Flutter CLI https://flutter.io/setup https://flutter.io/using-ide/
  5. ARCHITEKTUR: CORE ENGINE Framework Dart Material Engine C++ Skia Dart

    Text Widgets Rendering Animation Foundation Painting Gestures Cupertino
  6. DART FEATURES  JavaScript Transpiler  Ähnlich wie TypeScript 

    Typsichere, objektorientierte Sprache  Kann auch nativ kompiliert werden
  7. FLUTTER WEB VORTEILE  Ein einfacher Weg aus der Mobile

    App eine Web App zu machen  App entwickeln und später schauen, wo sie laufen soll  Kein dediziertes Web Know-how erforderlich
  8. FLUTTER WEB: EINSATZSZENARIEN Progressive Web Apps High Quality PWAs mit

    einer hohen Client Integration, inkl. Installation, Offline Support und maßgeschneiderte UX. SPA Single Page Apps Standalone Web Apps, mit erweiterten Grafikanforderungen und komplexer Benutzerinterkation über Device Grenzen hinweg. Mobile Existierende Mobile Apps Browser-basiertes Delivery Modell für existierende Flutter Mobile Apps. Dart Code wird gegen ein anderes Modell kompiliert und muss nur geringfügig angepasst werden.
  9. ARCHITEKTUR: FLUTTER WEB Framework Dart Material Browser JavaScript / C++

    HTML/CSS WebGL WASM Widgets Rendering Animation Foundation Painting Gestures Cupertino Canvas  Flutter Web ist eine Kombination aus: DOM, Canvas & WebAssembly  Core Drawing Layer wurde in Dart entwickelt  Wird über den JavaScript Compiler fürs Web kompiliert  Framework & App wird über eine einzelne Datei verteilt  Funktioniert mit jedem modernen Browser und mit jedem Web Server
  10. WEB RENDERERS HTML Renderer  Verwendet eine Kombination aus HTML-,

    CSS-, Canvas- und SVG-Elementen.  Hat eine geringe Download Größe  Für Text-intensive Apps CanvasKit Renderer  Ist vergleichbar mit dem Flutter Mobile- und Desktop-Renderer  Hat eine höhere Performance  Hat jedoch auch eine größere Bundle Size (~2 MB)  Für Grafik-intensive Apps
  11. BROWSER SUPPORT Flutter Web Apps können in den folgenden Browsern

    ausgeführt werden:  Chrome (Mobile & Desktop)  Safari (Mobile & Desktop)  Edge (Mobile & Desktop)  Firefox (Mobile & Desktop) Während der Entwicklung werden Chrome (macOS, Windows & Linux) und Edge (Windows) als Default Browser für das Debugging unterstützt.
  12. FAZIT FLUTTER VEREINFACHT DIE CROSS-PLATTFORM-ENTWICKLUNG  Einheitliche Entwicklung nativer Apps

    für Mobile, Desktop und Web  Einfache Entwicklung von Custom UIs  Plattformspezifische Anpassungen leicht möglich  Vorhandenes Wissen kann wiederverwendet werden
  13. RESSOURCEN FLUTTER HOME  https://flutter.io FLUTTER WEB  https://flutter.dev/web FLUTTER

    CODE LABS  https://codelabs.developers.google.com/codelabs/flutter