SlideShare a Scribd company logo
K.Leelarani, AP-CSE
K.Leelarani, AP-CSE
Kamaraj College of Engineering and Technology
Kamaraj College of Engineering and Technology

Topics:
•Introduction
•What is Flutter?
•Why Flutter?
•Advantages and Disadvantages of Flutter
•Flutter Architecture
•Widget
•Structure of Flutter App
•Creating Hello World App
UNIT I
Introduction to Flutter

 Mobile App Development is Complex: Building
mobile apps is challenging.
 Different Frameworks for Android & iOS:
 Android uses Java and Kotlin.
 iOS uses Objective-C and Swift.
 The Problem: Separate languages are needed for
each platform.
 The Solution: Cross-platform tools allow building
apps for both Android, iOS, and desktops using a
single framework.
Introduction
Framework Language
Supported
Platforms
Performance Best For Example Apps
Flutter Dart
iOS, Android,
Web, Desktop
High
Custom UI, Fast
Dev
Google Ads,
BMW
React Native JavaScript iOS, Android Medium-High
Mobile-first
Apps
Facebook,
Instagram
Xamarin C#
iOS, Android,
Windows
High Enterprise Apps
UPS, Alaska
Airlines
KMM Kotlin iOS, Android High
Native Mobile
Apps
Netflix, Philips
Kivy/PyQT Python
iOS, Android,
Desktop
Low-Medium
Prototyping,
Small Apps
Kivy Showcase
App

 One Code for All Platforms: Write one code and use
it on Android, iOS, and Desktop.
 Saves Time and Effort: Reduces development time
and effort.
 Popular Tools: Examples include:
 Ionic
 PhoneGap
 Xamarin
 React Native
 New Framework: Flutter by Google is a recent
addition to cross-platform tools.
Introduction

Flutter is a UI toolkit for building fast, beautiful,
natively compiled applications for mobile, web,
and desktop with one programing language and
single codebase.
It is free and open-source.
Flutter apps use Dart programming language for
creating an app.
What is Flutter

Why Flutter

 Open-Source: Flutter is a free and open-source framework for
developing mobile applications.​
 Cross-platform: This feature allows Flutter to write the code
once, maintain, and can run on different platforms. It saves the
time, effort, and money of the developers.​
 Hot Reload: Whenever the developer makes changes in the
code, then these changes can be seen instantaneously with Hot
Reload. ​
 Accessible Native Features and SDKs: This feature allows the
app development process easy and delightful through Flutter's
native code, third-party integration, and platform APIs.​
​
Features of Flutter

 Minimal code:
 Dart Programming Language: Flutter apps are built using
Dart.
 JIT and AOT Compilation: Dart uses JIT (Just-In-
Time) for faster development and AOT (Ahead-Of-Time)
for better performance and quick startup.
 Smooth UI Updates: JIT allows real-time UI updates
without rebuilding the entire app.
 This combination ensures faster performance, efficient
development, and seamless user experience.
Features of Flutter

Widget:
The Flutter framework provides a rich collection of
customizable widgets for building tailored designs. It
includes two main widget sets:
 Material Design Widgets: For Android-like UI
experiences.
 Cupertino Widgets: For iOS-like UI experiences.
These widget sets ensure a smooth and consistent
user experience across all platforms.
Features of Flutter

 Unique Rendering Engine: Flutter doesn’t use
WebView or built-in device widgets.
 Custom Widgets: It uses its own high-performance
rendering engine to create widgets.
 Built with Dart: Systems like animations, gestures,
and widgets are built using Dart, making them easy
to modify.
 Full Developer Control: Developers have excellent
control over the system.
Why Flutter is Unique

 Fast Development: The hot-reload feature
significantly accelerates the development process.
Changes made to the code are reflected instantly,
allowing for quicker iterations and debugging.
 Smooth Performance: Flutter ensures smoother
scrolling experiences with fewer lags or
interruptions, offering faster performance compared
to many other mobile app development frameworks.
Advanatages of Flutter

 Efficient Testing: Since Flutter apps are cross-platform, testing
efforts are minimized. Testers can run the same set of tests
across multiple platforms, saving time and resources.
 Excellent UI: Flutter boasts a design-centric approach with a
variety of widgets, advanced development tools, and APIs,
resulting in a superior user interface. Its reactive framework
also reduces the need for manual UI updates.
 Ideal for MVPs: Flutter is particularly suitable for developing
Minimum Viable Products (MVPs) due to its rapid
development capabilities and ability to deploy across
platforms seamlessly.
Advanatages of Flutter

 The Flutter is a comparatively new language that needs
continuous integration support through the maintenance of
scripts.
 It provides very limited access to SDK libraries. It means a
developer does not have a lot of functionalities to create a
mobile application. Such types of functionalities need to be
developed by the Flutter developer themselves.
 It uses Dart programming for coding, so a developer needs to
learn new technologies. However, it is easy to learn for
developers.
Disadvanatages of Flutter

 Flutter's architecture, which is ingeniously divided into
three primary layers:
 Framework,
 Engine
 Embedder
Flutter Architecture

Flutter Architecture

Flutter Architecture
Framework
Developed with the Dart programming language, it consists of a series of libraries
and layers that handle animations, interactions, rendering, among other components.
Engine
It is the core of the framework, mostly written in C++ and designed to be platform-
independent. It provides a low-level implementation of services handling everything from
rendering to managing connections, animations, and gesture recognition.
Embedder
The embedder coordinates with the host OS for access to different services the app might
need. Using the embedder, existing applications can be integrated as if they were modules.

Anatomy of an App

Anatomy of an App
Dart App:
– Composes widgets into the desired UI.
– Implements business logic.
– Owned by the app developer.
Framework:
– Provides a higher-level API to build high-quality apps (e.g.,
widgets, hit-testing, gesture detection, accessibility, text input).
– Composites the app’s widget tree into a scene.

Anatomy of an App
Engine:
– Responsible for rasterizing composited scenes.
– Provides a low-level implementation of Flutter’s core APIs (e.g.,
graphics, text layout, Dart runtime).
– Exposes its functionality to the framework using the dart:ui API.
– Integrates with a specific platform using the Engine’s Embedder API.
Embedder:
– Coordinates with the underlying operating system for access to
services like rendering surfaces, accessibility, and input.
– Manages the event loop.
– Exposes a platform-specific API to integrate the Embedder into apps.

Anatomy of an App
Runner:
•Composes the pieces exposed by the platform-specific API of the
Embedder into an app package runnable on the target platform.
•Part of the app template generated by ‘flutter create’, owned by the
app developer.
» UI = f(state)
You have surely heard countless times that the UI is built to
reflect the application's state.

• The blocks that make up the UI in Flutter are called widgets.
• Widgets are the primary component of any flutter application.
It acts as a UI for the user to interact with the application.
Flutter Widget Types
1. Stateless Widget
2. Stateful Widget
Widget

Structure of Flutter App



Thank You

More Related Content

PPTX
Flutter presentation.pptx
PPTX
603848771-Lecture-1-Intro-to-Flutter-and-Dart.pptx
PPTX
Flutter presentation for Gujarat University
DOCX
flutter-general-report.docx
PPTX
Lecture -Introduction to Flutter and Dart.pptx
PDF
Tech winter break - GDG on campus PPT1.pptx.pdf
PPTX
Introduction to flutter's basic concepts
PDF
Flutter App Development- Why Should You Choose It .
Flutter presentation.pptx
603848771-Lecture-1-Intro-to-Flutter-and-Dart.pptx
Flutter presentation for Gujarat University
flutter-general-report.docx
Lecture -Introduction to Flutter and Dart.pptx
Tech winter break - GDG on campus PPT1.pptx.pdf
Introduction to flutter's basic concepts
Flutter App Development- Why Should You Choose It .

Similar to UNIT-1 __ Introduction to Flutter.ppt (20)

PDF
Flutter Development Services
PPTX
Flutter talkshow
PPTX
Flutter App Development: The Best Framework For Cross-Platform Applications
PDF
Native mobile application development with Flutter (Dart)
DOC
Flutter - the Most advanced Cross-Platform App Development Framework
PPTX
Flutter
PPTX
Flutter alegria event gdsc pillai college of engineering
PDF
Top reasons why flutter become a trend in application development
PDF
INTRODUCTION TO FLUTTER.pdf
PPTX
Mobile Application Development class 001
PPTX
Flutter technology Based on Web Development
PDF
Why Flutter.pdf
PDF
The Future Of Flutter App Development: What to Expect Next?
PDF
Why The Future of Flutter Will Be Your Next Big Obsession.pdf
PPTX
Flutter Introduction and Architecture
PDF
How Can Flutter App Benefit Your Business Processes.pdf
PDF
How Can Flutter App Benefit Your Business Processes.pdf
PPTX
Exploring-the-World-of-Flutter-Development.pptx
PDF
How does flutter cuts app development cost?
PDF
How Can Flutter App Benefit Your Business Processes.
Flutter Development Services
Flutter talkshow
Flutter App Development: The Best Framework For Cross-Platform Applications
Native mobile application development with Flutter (Dart)
Flutter - the Most advanced Cross-Platform App Development Framework
Flutter
Flutter alegria event gdsc pillai college of engineering
Top reasons why flutter become a trend in application development
INTRODUCTION TO FLUTTER.pdf
Mobile Application Development class 001
Flutter technology Based on Web Development
Why Flutter.pdf
The Future Of Flutter App Development: What to Expect Next?
Why The Future of Flutter Will Be Your Next Big Obsession.pdf
Flutter Introduction and Architecture
How Can Flutter App Benefit Your Business Processes.pdf
How Can Flutter App Benefit Your Business Processes.pdf
Exploring-the-World-of-Flutter-Development.pptx
How does flutter cuts app development cost?
How Can Flutter App Benefit Your Business Processes.
Ad

Recently uploaded (20)

PPT
Project quality management in manufacturing
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
Well-logging-methods_new................
PPTX
additive manufacturing of ss316l using mig welding
PDF
Digital Logic Computer Design lecture notes
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
PPTX
Strings in CPP - Strings in C++ are sequences of characters used to store and...
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
UNIT 4 Total Quality Management .pptx
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
Geodesy 1.pptx...............................................
PDF
composite construction of structures.pdf
PDF
PPT on Performance Review to get promotions
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Project quality management in manufacturing
Foundation to blockchain - A guide to Blockchain Tech
Well-logging-methods_new................
additive manufacturing of ss316l using mig welding
Digital Logic Computer Design lecture notes
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
CYBER-CRIMES AND SECURITY A guide to understanding
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
bas. eng. economics group 4 presentation 1.pptx
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
Strings in CPP - Strings in C++ are sequences of characters used to store and...
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
UNIT 4 Total Quality Management .pptx
Model Code of Practice - Construction Work - 21102022 .pdf
Geodesy 1.pptx...............................................
composite construction of structures.pdf
PPT on Performance Review to get promotions
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Ad

UNIT-1 __ Introduction to Flutter.ppt

  • 1. K.Leelarani, AP-CSE K.Leelarani, AP-CSE Kamaraj College of Engineering and Technology Kamaraj College of Engineering and Technology
  • 2.  Topics: •Introduction •What is Flutter? •Why Flutter? •Advantages and Disadvantages of Flutter •Flutter Architecture •Widget •Structure of Flutter App •Creating Hello World App UNIT I Introduction to Flutter
  • 3.   Mobile App Development is Complex: Building mobile apps is challenging.  Different Frameworks for Android & iOS:  Android uses Java and Kotlin.  iOS uses Objective-C and Swift.  The Problem: Separate languages are needed for each platform.  The Solution: Cross-platform tools allow building apps for both Android, iOS, and desktops using a single framework. Introduction
  • 4. Framework Language Supported Platforms Performance Best For Example Apps Flutter Dart iOS, Android, Web, Desktop High Custom UI, Fast Dev Google Ads, BMW React Native JavaScript iOS, Android Medium-High Mobile-first Apps Facebook, Instagram Xamarin C# iOS, Android, Windows High Enterprise Apps UPS, Alaska Airlines KMM Kotlin iOS, Android High Native Mobile Apps Netflix, Philips Kivy/PyQT Python iOS, Android, Desktop Low-Medium Prototyping, Small Apps Kivy Showcase App
  • 5.   One Code for All Platforms: Write one code and use it on Android, iOS, and Desktop.  Saves Time and Effort: Reduces development time and effort.  Popular Tools: Examples include:  Ionic  PhoneGap  Xamarin  React Native  New Framework: Flutter by Google is a recent addition to cross-platform tools. Introduction
  • 6.  Flutter is a UI toolkit for building fast, beautiful, natively compiled applications for mobile, web, and desktop with one programing language and single codebase. It is free and open-source. Flutter apps use Dart programming language for creating an app. What is Flutter
  • 8.   Open-Source: Flutter is a free and open-source framework for developing mobile applications.​  Cross-platform: This feature allows Flutter to write the code once, maintain, and can run on different platforms. It saves the time, effort, and money of the developers.​  Hot Reload: Whenever the developer makes changes in the code, then these changes can be seen instantaneously with Hot Reload. ​  Accessible Native Features and SDKs: This feature allows the app development process easy and delightful through Flutter's native code, third-party integration, and platform APIs.​ ​ Features of Flutter
  • 9.   Minimal code:  Dart Programming Language: Flutter apps are built using Dart.  JIT and AOT Compilation: Dart uses JIT (Just-In- Time) for faster development and AOT (Ahead-Of-Time) for better performance and quick startup.  Smooth UI Updates: JIT allows real-time UI updates without rebuilding the entire app.  This combination ensures faster performance, efficient development, and seamless user experience. Features of Flutter
  • 10.  Widget: The Flutter framework provides a rich collection of customizable widgets for building tailored designs. It includes two main widget sets:  Material Design Widgets: For Android-like UI experiences.  Cupertino Widgets: For iOS-like UI experiences. These widget sets ensure a smooth and consistent user experience across all platforms. Features of Flutter
  • 11.   Unique Rendering Engine: Flutter doesn’t use WebView or built-in device widgets.  Custom Widgets: It uses its own high-performance rendering engine to create widgets.  Built with Dart: Systems like animations, gestures, and widgets are built using Dart, making them easy to modify.  Full Developer Control: Developers have excellent control over the system. Why Flutter is Unique
  • 12.   Fast Development: The hot-reload feature significantly accelerates the development process. Changes made to the code are reflected instantly, allowing for quicker iterations and debugging.  Smooth Performance: Flutter ensures smoother scrolling experiences with fewer lags or interruptions, offering faster performance compared to many other mobile app development frameworks. Advanatages of Flutter
  • 13.   Efficient Testing: Since Flutter apps are cross-platform, testing efforts are minimized. Testers can run the same set of tests across multiple platforms, saving time and resources.  Excellent UI: Flutter boasts a design-centric approach with a variety of widgets, advanced development tools, and APIs, resulting in a superior user interface. Its reactive framework also reduces the need for manual UI updates.  Ideal for MVPs: Flutter is particularly suitable for developing Minimum Viable Products (MVPs) due to its rapid development capabilities and ability to deploy across platforms seamlessly. Advanatages of Flutter
  • 14.   The Flutter is a comparatively new language that needs continuous integration support through the maintenance of scripts.  It provides very limited access to SDK libraries. It means a developer does not have a lot of functionalities to create a mobile application. Such types of functionalities need to be developed by the Flutter developer themselves.  It uses Dart programming for coding, so a developer needs to learn new technologies. However, it is easy to learn for developers. Disadvanatages of Flutter
  • 15.   Flutter's architecture, which is ingeniously divided into three primary layers:  Framework,  Engine  Embedder Flutter Architecture
  • 17.  Flutter Architecture Framework Developed with the Dart programming language, it consists of a series of libraries and layers that handle animations, interactions, rendering, among other components. Engine It is the core of the framework, mostly written in C++ and designed to be platform- independent. It provides a low-level implementation of services handling everything from rendering to managing connections, animations, and gesture recognition. Embedder The embedder coordinates with the host OS for access to different services the app might need. Using the embedder, existing applications can be integrated as if they were modules.
  • 19.  Anatomy of an App Dart App: – Composes widgets into the desired UI. – Implements business logic. – Owned by the app developer. Framework: – Provides a higher-level API to build high-quality apps (e.g., widgets, hit-testing, gesture detection, accessibility, text input). – Composites the app’s widget tree into a scene.
  • 20.  Anatomy of an App Engine: – Responsible for rasterizing composited scenes. – Provides a low-level implementation of Flutter’s core APIs (e.g., graphics, text layout, Dart runtime). – Exposes its functionality to the framework using the dart:ui API. – Integrates with a specific platform using the Engine’s Embedder API. Embedder: – Coordinates with the underlying operating system for access to services like rendering surfaces, accessibility, and input. – Manages the event loop. – Exposes a platform-specific API to integrate the Embedder into apps.
  • 21.  Anatomy of an App Runner: •Composes the pieces exposed by the platform-specific API of the Embedder into an app package runnable on the target platform. •Part of the app template generated by ‘flutter create’, owned by the app developer. » UI = f(state) You have surely heard countless times that the UI is built to reflect the application's state.
  • 22.  • The blocks that make up the UI in Flutter are called widgets. • Widgets are the primary component of any flutter application. It acts as a UI for the user to interact with the application. Flutter Widget Types 1. Stateless Widget 2. Stateful Widget Widget
  • 24.
  • 25.