Flutter (software)

from Wikipedia, the free encyclopedia
QS IT
This article was due to content flaws on the quality assurance side of the computer science editorial added. This is done in order to bring the quality of the articles from the subject area of ​​computer science to an acceptable level. Help to eliminate the shortcomings in this article and take part in the discussion !  ( + )


Reason: see below

Flutter

Google-flutter-logo.png
Basic data

developer Google LLC
Current  version 1.20.2
( August 13, 2020 )
operating system Android, iOS, Windows, Linux, macOS, Google Fuchsia
programming language Darts
category Framework
License BSD
https://flutter.dev

Flutter is an open source UI development kit from Google and is based on the Dart programming language . According to the manufacturer, Flutter's focus is on short development times, faster execution and "native user experience ". A Flutter program should run on the following target platforms without major adjustments: WebApp , Android , iOS , Windows , Linux , macOS and Google Fuchsia .

construction

Flutter itself is written in C ++ and uses the Dart Virtual Machine (Dart-VM) and the Skia graphics library . When executing programs, Flutter tries to achieve a frame rate of at least 60 fps, or 120 fps if the hardware allows this.

Flutter programs for Android, iOS, Windows, Linux and macOS are compiled directly for the target platform and then executed in a Dart VM. Flutter WebApps are translated to JavaScript and can therefore be run directly in modern web browsers.

Widget

The basic component in a Flutter program is a widget , whereby a widget can in turn consist of widgets. A widget bundles the logic, interaction and display within an object and its structure is reminiscent of the React JavaScript software library . There are a number of ready-made widgets that map known and often required interactions, such as buttons , lists, checkboxes , tabs, etc. Flutter does not use the widgets of the respective platform, but implements them in Flutter. Widgets for Android follow the material design guidelines, while widgets for other operating systems such as iOS , Windows , Linux or macOS follow the respective guidelines. Although widgets play an essential role in Flutter, programs can also be programmed (almost) without widgets by drawing directly on a canvas.

Hello World example

A hello world program in Flutter could look like this. In this case the material widgets are used.

 1 import 'package:flutter/material.dart';
 2 
 3 void main() => runApp(HelloWorldApp());
 4 
 5 class HelloWorldApp extends StatelessWidget {
 6   @override
 7   Widget build(BuildContext context) {
 8     return MaterialApp(
 9       title: 'Hello World App',
10       home: Scaffold(
11         appBar: AppBar(
12           title: Text('Hello World App'),
13         ),
14         body: Center(
15           child: Text('Hello World'),
16         ),
17       ),
18     );
19   }
20 }

Individual evidence

  1. github.com .
  2. Flutter - Beautiful native apps in record time. Accessed January 30, 2020 (English).
  3. Open-Source Clues to Google's Mysterious Fuchsia OS. Accessed January 30, 2020 (English).
  4. Skia in Flutter & Fuchsia. Retrieved March 1, 2020 .
  5. Flutter performance profiling. Retrieved March 1, 2020 .
  6. Dart.dev Platforms. Accessed January 30, 2020 (English).
  7. ^ Web support for Flutter. Accessed January 30, 2020 (English).
  8. ^ Flutter - 60 FPS UI of the Future - Everything is a widget. Retrieved March 1, 2020 .
  9. Introduction to widgets. Accessed January 30, 2020 (English).
  10. StatefulWidget class - widgets library - Dart API. Accessed January 30, 2020 .
  11. Material Components widgets. Accessed January 30, 2020 (English).
  12. Canvas class. Retrieved March 1, 2020 .
  13. Zerker - a lightweight and powerful flutter graphic animation library. Retrieved March 1, 2020 .
  14. 2D game engine made on top of Flutter. Retrieved March 1, 2020 .