Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 11

NITTE MEENAKSHI INSTITUTE OF TECHNOLOGY

(AN AUTONOMOUS INSTITUTION, AFFILIATED TO VISVESVARAYA TECHNOLOGICAL UNIVERSITY,


BELGAUM,
APPROVED BY AICTE & GOVT.OF KARNATAKA

Technical Seminar
on

Flutter

Learning Activity-2 of Course: Introduction to Software


Technologies(18CSE465)

Submitted by:

Name: Arihant Kochar


USN:1NT18CS021
Date-27 March 2020

Department of Computer Science and Engineering

1
2019-2020
Nitte Meenakshi Institute of Technology
(AN AUTONOMOUS INSTITUTION AFFILIATED TO VISVESVARAYA TECHNOLOGICAL
UNIVERSITY, BELGAUM)
PB No. 6429, Yelahanka, Bangalore 560-064, Karnataka
Telephone: 080- 22167800, 22167860
Fax: 080 - 22167805

DEPARTMENT OF COMPUTER SCIENCE AND


ENGINEERING

CERTIFICATE

This is to certify that the Seminar titled “Flutter” is an authentic work carried out by
Arihant Kochar(1NT18CS021) bonafide student of Nitte Meenakshi Institute of Technology,
Bangalore in partial fulfilment for the Learning Activity -2 of the course Introduction
to Software Technologies (18CSE465) in COMPUTER SCIENCE AND ENGINEERING of
Visvesvaraya
Technological University, during the academic year 2019-
2020.

Vinay T R Dr. Thippeswamy MN


HOD(CSE)
Faculty Incharge
INDEX

Page No.
1.INTRODUCTION 4
2.ADVANTAGES 7
3. FUTURE SCOPE 8
4.CONCLUSION 11
5.REFERENCES 11
INTRODUCTION

Flutter is Google’s UI toolkit for building beautiful,


natively compiled applications for mobile, web, and
desktop from single codebase.

ICON

Flutter is a solution for creating cross-platform mobile


applications with beautiful UI. Flutter’s way of designing
views is similar to the web applications, so you can
find many analogies to HTML/CSS.

In the shortcut, Flutter is a mobile SDK that allows us


to create cross-platform mobile applications (so you can
write one code and run the app both on Android and
iOS). You write code in Dart, a language developed by
Google, which looks very familiar if you used Java before.
The core Widget is MaterialApp (that’s the whole
application), then we have Scaffold (that’s the main
layout structure), and then inside we have AppBar
(like Android Toolbar) and some Container as body. Inside
body, we’ll put our layout Widgets — Texts, Buttons, etc.

Everything is a Widget

creating UI is very easy. It’s possible thanks to the


core principle of Flutter, where everything is a widget. Your
app class is a widget (MaterialApp), your whole layout
structure is a widget (Scaffold), and basically, everything is a
widget (AppBar, Drawer, SnackBar).

It’s also connected with another core principle  —  in


Flutter composition is over inheritance. It means that if you’d
like to create some new widget, instead of extending Widget
class (as you’ll do in Android by exte
n d i n g some View class), you instead compose new
Widget with few small Widgets.
Different themes for Android/iOS

Usually, we want our Android application to look


different than an iOS app. Differences are not only in colours
but also in dimensions and styles of widgets. We can
achieve this in Flutter with themes:

As you can see, we set different colour and elevation


for T o o l b a r (AppBar). We do
i t using Theme.of(context).platform parameter to get
current platform
ADVANTAGES

Fast Development

Paint your app to life in milliseconds with Stateful Hot


Reload. Use a rich set of fully-customisable widgets to build
native interfaces in minutes.

Expressive and Flexible UI

Quickly ship features with a focus on native end-


user experiences. Layered architecture allows for full
customisation, which results in incredibly fast rendering and
expressive and flexible designs.

Native Performance

Flutter’s widgets incorporate all critical platform differences


such as scrolling, navigation, icons and fonts, and your
Flutter code is compiled to native ARM machine code
using Dart's native compilers. Thus Flutter gives you full
native performance on both iOS and Android.
FUTURE SCOPE

Flutter is build with C, C++, Dart and Ski-a. And the


most beautiful part is that all release code is compiled
in native code (Android NDK, LLVM, AOT-compiled)
without interpreter involved. If you are familiar with
performance drawbacks of hybrid frameworks you can
easy say that flutter compile fastest code very close
to pure native performance.

Flutter is different than most other options for building


mobile apps because Flutter uses neither WebView nor the
OEM widgets that shipped with the device. Instead, Flutter
uses its own high-performance rendering engine to draw
widgets.

In addition, Flutter is different because it only has a


thin layer of C/C++ code. Flutter implements most of its
system (compositing, gestures, animation, framework,
widgets, etc) in Dart (a modern, terse, object-oriented
language) that developers can easily approach read,
change, replace, or remove. This gives developers
tremendous control over the
system, as well as significantly lowers the bar to approach
ability for the majority of the system.

Flutter is designed for use by both new and


experienced mobile application developers, according to
Google. It integrates with popular development tools so
developers can continue using the editor or
integrated development environment that they always use.
Which is more stable: When you are developing cross-
platform app stability becomes an important factor. At first,
Flutter was missing behind since it had just its alpha form,
which was not entirely appropriate for longer ventures.
A month ago Google has declared the Flutter Beta 2,
which offers improved developer tools and asset system.

Developing Blocks for UI: The huge gap between


React Native & Flutter is regarding the creation of blocks for
User Interface. By making use of the Flutter’s proprietary
widgets, you can get completely customised UI designs
with good interoperability. it represents a few
disadvantages also. React Native offers a superior User
Experience (UX) when a client takes advantage of the
Operating System. Accordingly, React Native is successful
here.
Documentation & Tooling: We are contrasting both Google
Flutter and React Native based on documentation and
tooling. Flutter offers controlled and efficiently
smooth documentation, which simplifi es the job of
the app developers. Flutter proves better than React
Native in the documentation.

Tussle of the Programming Languages: We should


also focus on which programming language is better
JavaScript or Dart. And the answer is that JavaScript
enjoys both in terms of popularity and adoption rates while
Dart is still new, it hasn’t received as much attention as
JavaScript.

Less Development Time: The app developers work on


very strict deadlines and it turns into a reward on the
off chance that they pick a system that offers
shorter advancement time. So here, React Native has risen
as the victor as it decreases the season of
application advancement.
CONCLUSION

Even in beta, Flutter offers a great solution for building


cross- platform applications. With its excellent tooling and hot
reloading, it brings a very pleasant development experience.
The wealth of open-source packages and excellent
documentation make it easy to get started with. Looking
forward, Flutter developers will be able to target Fuchsia in
addition to iOS and Android. Considering the extensibility of the
engine’s architecture, it wouldn’t surprise me to see Flutter land on
a variety of other platforms as well. With a growing community,
it’s a great time to jump in.

REFERENCE

• flutter.dev

• smashingmagazine.com

• Quora.com

You might also like