Introduction

Introduction :

  • Flutter is a cross platform lanaguage. Flutter run on mobile (Android/iOS) devices, it will run on desktop, embedded systems and now, the web. Flutter builds native apps and they are written in the Dart language.
  • Flutter is compiled programming language called the Dart Which is compile AOT (Ahead Of Time). That is used to compiled both code android and ios.
  • Start or run flutter application main. It is building blocks are widgets and main() block contain runApp() method. runApp() method takes the given Widget and makes it the root of the widget tree. runApp() make the root widget of the app.
  • This tool is built in C and C++ and provides a 2D rendering engine, a React – insprired functional – reactive framework, and a set of Material Desing widgets.
  • Dart is a fast, object – oriented programming language. It is a easy to learn.
  • It is provide own widgets, drawn with its own high – performance rendering engine. They are fast, pretty and customizable.
  • Android and IOS platforms, Flutter will be the main framework for developing applications for Google’s upcoming operating system (OS) Fuchia.

React native compare to flutter

  • React native use to javascript bridging, Dart is compiled ‘ahed of time’ (AOT) into a native code for the multipl e platform. As JavaScript bridge is not required, that reason improve the perfomance flutter.
  • Flutter release first version
  • Tim Sneath announced the release of Flutter 1.0. Initial release Alpha (v0.0.6) / May 2017. Flutter is stable December 11, 2019.

Flutter application structure

  • android, assets, ios, lib, test
  • Flutter provides a large range of Material Design inspired widgets, ready to be used in applications, such as:
  • Application structure and navigation: Scaffold, Appbar, BottomNavigationBar, TabBar, TabBarView, Drawer.
  • Buttons: OutlineButton, RaisedButton, FloatingActionButton, FlatButton, IconButton, PopupMenuButton, ButtonBar
  • Input and Selection: TextField, Checkbox, Radio, Switch, Slider, Date & Time Pickers, FormField, Form.
  • Dialogs, alerts and panels: SimpleDialog, AlertDialog, BottomSheet, ExpansionPanel, SnackBar.
  • Information displays: Image, Icon, Chip, Tooltip, DataTable, Card, LinearProgressIndicator, GridView
  • Layout: ListTile, Stepper, Divider
  • Basic: Container, Row, Column, Text, RichText
  • Support for Canvas
  • Cupertino (iOS -style): ActivityIndicator, AlertDialog, Button, Dialog, DialogAction, Slider, Switch, Picker, PageTransition, FullscreenDialogTransition, NavigationBar, TabBar, PageScaffold, TabScaffold, TabView
  • Layout: Container, Padding, Center, Align, FittedBox, AspectRatio, ConstrainedBox, Baseline, FractionallySizedBox, SizedBox, OverfloxBox, Transform, Stack, GridView, Flow, Table, Wrap, ListBody, ListView
  • Animation: AnimatedContainer, AnimatedCrossFade, Hero, DecoratedBoxTransition, FadeTransition, PositionedTransition, RotationTransition, ScaleTransition, SizeTransition, AnimatedOpacity…
  • Interaction: Draggable, LongPressDraggable, GestureDetector, InkWell, DragTarget, Dismissible, IgnorePointer, AbsortPointer, Scrollable
  • Routing: Hero, Navigator
  • Styling: Theme, MediaQuery
  • Painting and Effect: Opacity, Transform, DecoratedBox, FractionalTranslation, RotatedBox, ClipOval, ClipPath, ClipRect, CustomPaint, BackdropFilter
  • Async: FutureBuilder, StreamBuilder
  • Scrolling: SingleChildScrollView, ListView
  • Block Pattern: Inherited Widget, Redux, Scoped Model, Provider, BLoC pattern, MobX.
  • Data pass one page to next page: constructor, route. Route is one of best pass data in flutter.
  • Bottom: BottomNavigationBar.
  • Back the application: WillPopScope

How to Learn (Start) Flutter