Lecture 1

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 15

Flutter – Introduction

Chapter 01
Flutter – Introduction
 In general, developing a mobile application is a complex and
challenging task. There are many frameworks available to develop
a mobile application. Android provides a native framework based
on Java language and iOS provides a native framework based on
Objective-C / Swift language.
 However, to develop an application supporting both the OSs, we
need to code in two different languages using two different
frameworks. To help overcome this complexity, there exists mobile
frameworks supporting both OS.
 These frameworks range from simple HTML based hybrid mobile
application framework (which uses HTML for User Interface and
JavaScript for application logic) to complex language specific
framework (which do the heavy lifting of converting code to native
code). Irrespective of their simplicity or complexity, these
frameworks always have many disadvantages, one of the main
drawback being their slow performance.
Flutter – Introduction
 In this scenario, Flutter – a simple and high performance
framework based on Dart language, provides high performance by
rendering the UI directly in the operating system’s canvas rather
than through native framework.
 Flutter also offers many ready to use widgets (UI) to create a
modern application. These widgets are optimized for mobile
environment and designing the application using widgets is as
simple as designing HTML.
 To be specific, Flutter application is itself a widget. Flutter widgets
also supports animations and gestures. The application logic is
based on reactive programming. Widget may optionally have a
state. By changing the state of the widget, Flutter will
automatically (reactive programming) compare the widget’s state
(old and new) and render the widget with only the necessary
changes instead of re-rendering the whole widget.
Features of Flutter
 Flutter framework offers the following features to developers:
 Modern and reactive framework.
 Uses Dart programming language and it is very easy to learn.
 Fast development.
 Beautiful and fluid user interfaces.
 Huge widget catalog.
 Runs same UI for multiple platforms.
 High performance application.
Advantages of Flutter
 Flutter comes with beautiful and customizable
widgets for high performance and outstanding
mobile application. It fulfills all the custom needs
and requirements. Besides these, Flutter offers
many more advantages as mentioned below:
Advantages of Flutter
 Dart has a large repository of software packages which lets you to
extend the capabilities of your application.
 Developers need to write just a single code base for both
applications (both Android and iOS platforms). Flutter may to be
extended to other platform as well in the future.
 Flutter needs lesser testing. Because of its single code base, it is
sufficient if we write automated tests once for both the platforms.
 Flutter’s simplicity makes it a good candidate for fast
development. Its customization capability and extendibility makes
it even more powerful.
 With Flutter, developers has full control over the widgets and its
layout.
 Flutter offers great developer tools, with amazing hot reload.
Disadvantages of Flutter
 Despite its many advantages, flutter has the following drawbacks
in it:
 Since it is coded in Dart language, a developer needs to learn

new language (though it is easy to learn).


 Modern framework tries to separate logic and UI as much as

possible but, in Flutter, user interface and logic is intermixed.


We can overcome this using smart coding and using high level
module to separate user interface and logic.
 Flutter is yet another framework to create mobile application.

Developers are having a hard time in choosing the right


development tools in hugely populated segment.
Flutter – Installation
 Installation in Windows:
 In this section, let us see how to install Flutter SDK and its

requirement in a windows system.


 Step 1: Go to URL,

https://flutter.dev/docs/get-started/install/windows and
download the latest Flutter SDK. As of April 2019, the version is
1.2.1 and the file is flutter_windows_v1.2.1-stable.zip.
 Step 2: Unzip the zip archive in a folder, say C:\flutter\
 Step 3: Update the system path to include flutter bin directory.
 Step 4: Flutter provides a tool, flutter doctor to check that all

the requirement of flutter development is met.


flutter doctor
Flutter – Installation
 Installation in Windows:
 Step 5: Running the above command will analyze the system and show
its report as shown below:
 Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, v1.2.1, on Microsoft Windows
[Version 10.0.17134.706], locale en-US) [√] Android
toolchain - develop for Android devices (Android SDK version
28.0.3) [√] Android Studio (version 3.2) [√] VS Code, 64-bit
edition (version 1.29.1) [!] Connected device ! No devices
available ! Doctor found issues in 1 category.
 The report says that all development tools are available but the device
is not connected. We can fix this by connecting an android device
through USB or starting an android emulator.
Flutter – Installation
 Installation in Windows:
 Step 5: Running the above command will analyze the system and show
its report as shown below:
 Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, v1.2.1, on Microsoft Windows
[Version 10.0.17134.706], locale en-US) [√] Android
toolchain - develop for Android devices (Android SDK version
28.0.3) [√] Android Studio (version 3.2) [√] VS Code, 64-bit
edition (version 1.29.1) [!] Connected device ! No devices
available ! Doctor found issues in 1 category.
 The report says that all development tools are available but the device
is not connected. We can fix this by connecting an android device
through USB or starting an android emulator.
Flutter – Installation
 Installation in Windows:
 Step 6: Install the latest Android SDK, if reported by flutter

doctor
 Step 7: Install the latest Android Studio, if reported by flutter

doctor
 Step 8: Start an android emulator or connect a real android

device to the system.


 Step 9: Install Flutter and Dart plugin for Android Studio. It

provides startup template to create new Flutter application, an


option to run and debug Flutter application in the Android
studio itself, etc.,
 Open Android Studio.
 Click File > Settings > Plugins.
 Select the Flutter plugin and click Install.
 Click Yes when prompted to install the Dart plugin.
 Restart Android studio.
Flutter – Installation
 Installation in MacOS
 To install Flutter on MacOS, you will have to follow the
following steps:
 Step 1: Go to URL,
https://flutter.dev/docs/get-started/install/macos and
download latest Flutter SDK. As of April 2019, the version
is 1.2.1 and the file is flutter_macos_v1.2.1-stable.zip.
 Step 2: Unzip the zip archive in a folder, say
/path/to/flutter
 Step 3: Update the system path to include flutter bin
directory (in ~/.bashrc file).
 > export PATH="$PATH:/path/to/flutter/bin"
Flutter – Installation
 Installation in MacOS
 Step 4: Enable the updated path in the current session using

below command and then verify it as well.


 source ~/.bashrc source $HOME/.bash_profile echo

$PATH
 Flutter provides a tool, flutter doctor to check that all the

requirement of flutter development is met. It is similar to the


Windows counterpart.
 Step 5: Install latest XCode, if reported by flutter doctor
 Step 6: Install latest Android SDK, if reported by flutter doctor
 Step 7: Install latest Android Studio, if reported by flutter

doctor
 Step 8: Start an android emulator or connect a real android

device to the system to develop android application.


Flutter – Installation
 Installation in MacOS
 Step 9: Open iOS simulator or connect a real iPhone device to

the system to develop iOS application.


 Step 10: Install Flutter and Dart plugin for Android Studio. It

provides the startup template to create a new Flutter


application, option to run and debug Flutter application in the
Android studio itself, etc.,
 Open Android Studio.
 Click Preferences > Plugins.
 Select the Flutter plugin and click Install.
 Click Yes when prompted to install the Dart plugin.
 Restart Android studio.
END

You might also like