- Google releases the Dart 2.5 update and a new version Flutter 1.9
- Dart 2.5 provides support for calling C code and intelligent code completion
- Flutter 1.9 adds support for iOS 13 along with macOS Catalina. It also comes with new widgets
Google recently releases Dart 2.5 and Flutter 1.9 update with support for iOS 13 and macOS Catalina.
Dart 2.5 is designed in a way to add robust support for calling C code and intelligent code completion.
It employs machine learning to enable developers in completing their code or even figure out which API they should use.
Flutter 1.9 would now allow the developers to create mobile, web, and desktop apps from one and the same codebase.
Google developed the programming language Dart to assist flutter app developers in creating apps of all kinds and for all platforms. This object-oriented and class defined language employs a C-style syntax which trans-compiles optionally into another language JavaScript.
Now, let us discuss all these updates in detail so let’s get started right away.
Dart 2.5
It is certain that Dart 2.5 holds elements which the previous versions such as Dart 2.0 failed to deliver. There are two technical previews that are new in this version. The very first is dart:fft foreign function interface which is used for calling C code straight from Dart. The second preview is the code completion supported by the machine learning technology.
Support for calling C code
As of now, the support for calling C code is limited to deep integration into the Dart VM with the help of native extensions. The aim behind introducing this feature is that Google wants to provide a new mechanism with “great performance, is easy to approach, and works across the many supported Dart platforms and compilers”
The Dart-C interlop introduces two scenarios:
- On the host OS, calling into a C-based system API
- Calling into a C-based library for either a single OS or a cross-platform.
In the preview today, the dart:fft library will be launched. Moreover, it is expected that Google will make some more changes before finally releasing it to the public.
Code completion
The list of probable completions in typed programming languages gets tedious because of performing extensive browsing alphabetically as APIs start to grow. This is why Google started to explore machine learning technology to assist developers with code completion.
Google utilized the TensorFlow Lite to train a model of member occurrences built on a given context by examining a large corpus of open source Dart code. Then, the model is used to forecast the next symbol as the developer is still typing.
This new preview is available as a part of the Dart analyzer, meaning that the code completion is accessible across all the Dart-supported editors, inclusive of Android Studio, IntelliJ, and Visual Studio Code.
Flutter 1.9 Update
The newly releases version Flutter 1.9 completely supports macOS Catalina and iOS 13 with improvements such as advanced tooling, new material widget, and new features in the Dart language.
Google claimed Flutter 1.9 to be the biggest update till now with “more than 1,500 PRs from more than 100 contributors.”
In fact, the new Flutter 1.9 provides support for 24 additional languages namely: Afrikaans, Albanian, Amharic, Assamese, Azerbaijani, Basque, Belarusian, Bengali, Burmese, Gujarati, Icelandic, Georgian, Kannada, Kyrgyz, Lao, Macedonian, Malayalam, Nepali, Oriya, Punjabi, Sinhalese, Telugu, Uzbek, and Zulu. something that was missed in the previous updates like in Flutter 1.5.
Flutter designed for Web
The first technical review for Flutter for Web was releases in Google’s I/O conference 2019. The company has now integrated the Flutter web repository with the main Flutter repo, meaning that developers will be able to write code for mobile, web, and desktop with the same codebase.
Flutter creates a web runner via a minimal web//index.html file that now bootstraps the web-compiled code when you start to create a project. After this, the file allows you to use the Flutter CLI tool or the IDE plugins to run and also edit Flutter apps on the web.
However, Google has also said that the support for web output is still a work-in-progress.
Support for iOS 13 and macOS Catalina
Flutter supporting iOS13 and macOS is the result of Google wanting to make Flutter work well with the Xcode 11. Flutter also supports the new Xcode build system and 64-bit support throughout the whole toolchain while simplifying the platform dependencies.
Flutter 1.9 also has an implementation of the iOS 13 draggable toolbar, with both long-press and drag-from-right while supporting the vibration feedback.
Additionally, Flutter 1.9 comes with several new widgets that use Google’s Material Design. The icon and text widgets are combined by the ToogleButtons in order to form a set of buttons. The new ColorFiltered widget helps you recolor a tree of child widgets, and similarly, you can recolor an image with the help of different algorithms.