Microsoft's OS joins macOS and Linux at the Flutter party, but guess which one performs best? Hint: It's not Windows
(2020/09/23)
- Reference: 1600884552
- News link: https://www.theregister.co.uk/2020/09/23/flutter_targets_the_windows_desktop/
- Source link:
Google's Flutter team has introduced the first alpha release targeting Windows, extending the cross-platform development tool to enable the same code to run on Android, iOS, Linux, macOS and web apps.
[1]Flutter is an open-source project designed to meet the challenge developers face in supporting web and mobile platforms without having to rewrite their code.
There are many competing efforts in this space – including Microsoft's Xamarin, React Native, and Ionic – but Flutter ticks a lot of boxes, including a modern UI framework and native code compilation with performance and size benefits.
The language of Flutter is Dart. Google reckons that more than 100,000 Flutter apps have been shipped to the Android Play store (up from 90,000 reported [2]a month ago ).
Flutter was originally just for Android and iOS. In May 2019, [3]Web was added , using Dart's ability to compile to JavaScript, and Google declared that its aim was to provide "a portable UI framework for all screens" including desktop platforms and embedded devices.
[4]
Flutter's architecture includes a platform-specific code embedder, a C/C++ engine, and the UI framework written in Dart
In July this year Canonical [5]contributed a GTK+-based host for Flutter apps on Linux. Support for macOS is already in alpha, and this is now joined by Windows.
Flutter's architecture is based on a platform-specific embedder or host, an engine written in C/C++, and a UI framework using Dart. In the case of Windows, this means a Win32 application written in C++ that loads and executes the Flutter code for an application. Building a Win32 target creates an EXE file with all the necessary DLLs, and deployment can be as simple as copying a folder to a Windows 10 PC.
Shawn Blais from digital media company gskinner has described [6]in detail how developers built a desktop Flutter application called Flokk, explaining that the transition from a full-page mobile application to a windowed desktop application required a lot of layout work. There was also optimisation work necessary to avoid repainting the entire screen on every change, not such a problem on mobile but important in desktop applications.
[7]
Initial Flutter for Windows support is for Win32, but the team also has experimental support for UWP, described as a proof of concept
According to Blais: "In pre-beta stages, the applications run beautifully on Windows, Linux and MacOS. We were especially impressed with performance on Linux, with it often being the best performing of the platforms." Possibly Flutter's roots in Linux-based Android remain a factor here.
The Flutter team is also experimenting with UWP (Universal Windows Platform) support and already has a demo Flutter Gallery app in the Windows Store, described as a proof of concept. This runs on Xbox One as well as on Windows. ®
Get our [8]Tech Resources
[1] https://flutter.dev/
[2] https://www.theregister.com/2020/08/05/google_reports_80_increase_in/
[3] https://developers.googleblog.com/2019/05/Flutter-io19.html
[4] https://regmedia.co.uk/2020/09/23/flutter1.png
[5] https://medium.com/flutter/announcing-flutter-linux-alpha-with-canonical-19eb824590a9
[6] https://blog.gskinner.com/archives/2020/09/flokk---how-we-built-a-desktop-app-using-flutter.html
[7] https://regmedia.co.uk/2020/09/23/flutter2.png
[8] https://whitepapers.theregister.com/
[1]Flutter is an open-source project designed to meet the challenge developers face in supporting web and mobile platforms without having to rewrite their code.
There are many competing efforts in this space – including Microsoft's Xamarin, React Native, and Ionic – but Flutter ticks a lot of boxes, including a modern UI framework and native code compilation with performance and size benefits.
The language of Flutter is Dart. Google reckons that more than 100,000 Flutter apps have been shipped to the Android Play store (up from 90,000 reported [2]a month ago ).
Flutter was originally just for Android and iOS. In May 2019, [3]Web was added , using Dart's ability to compile to JavaScript, and Google declared that its aim was to provide "a portable UI framework for all screens" including desktop platforms and embedded devices.
[4]
Flutter's architecture includes a platform-specific code embedder, a C/C++ engine, and the UI framework written in Dart
In July this year Canonical [5]contributed a GTK+-based host for Flutter apps on Linux. Support for macOS is already in alpha, and this is now joined by Windows.
Flutter's architecture is based on a platform-specific embedder or host, an engine written in C/C++, and a UI framework using Dart. In the case of Windows, this means a Win32 application written in C++ that loads and executes the Flutter code for an application. Building a Win32 target creates an EXE file with all the necessary DLLs, and deployment can be as simple as copying a folder to a Windows 10 PC.
Shawn Blais from digital media company gskinner has described [6]in detail how developers built a desktop Flutter application called Flokk, explaining that the transition from a full-page mobile application to a windowed desktop application required a lot of layout work. There was also optimisation work necessary to avoid repainting the entire screen on every change, not such a problem on mobile but important in desktop applications.
[7]
Initial Flutter for Windows support is for Win32, but the team also has experimental support for UWP, described as a proof of concept
According to Blais: "In pre-beta stages, the applications run beautifully on Windows, Linux and MacOS. We were especially impressed with performance on Linux, with it often being the best performing of the platforms." Possibly Flutter's roots in Linux-based Android remain a factor here.
The Flutter team is also experimenting with UWP (Universal Windows Platform) support and already has a demo Flutter Gallery app in the Windows Store, described as a proof of concept. This runs on Xbox One as well as on Windows. ®
Get our [8]Tech Resources
[1] https://flutter.dev/
[2] https://www.theregister.com/2020/08/05/google_reports_80_increase_in/
[3] https://developers.googleblog.com/2019/05/Flutter-io19.html
[4] https://regmedia.co.uk/2020/09/23/flutter1.png
[5] https://medium.com/flutter/announcing-flutter-linux-alpha-with-canonical-19eb824590a9
[6] https://blog.gskinner.com/archives/2020/09/flokk---how-we-built-a-desktop-app-using-flutter.html
[7] https://regmedia.co.uk/2020/09/23/flutter2.png
[8] https://whitepapers.theregister.com/
Anonymous Coward
Do you think that because you believe Google will drop Dart with Lars gone, or because you think that they will mangle the language without him around to keep order?
nautica
Yes.
Doctor Syntax
"Google will drop Dart "
Why break the habit of a lifetime?
Bill 21
Flutter's very easy to work with, though. Haters hate I s'pose.
Who the hell cares about Flutter. Dart is a dead language since Lars Bak left Google, there's just no future for it. None.