Features of the Google Dart 2.5 SDK: Machine Learning Complete & Dart:FFI - Skywell Software

Features of the Google Dart 2.5 SDK: Machine Learning Complete & Dart:FFI

Features of the Google Dart 2.5 SDK: Machine Learning Complete & Dart:FFI
Tracy Watson
2019-09-19
Dart 2.5 SDK release

Developers all over the world are buzzing about the release of the new Google Dart SDK. The big deal about this new release is that it gives us a glimpse into ML Complete, which is Google’s approach to ML-powered automatic code completion. While this is one of the most prominent features on display in the new Dart 2.5 SDK release, it is not the only one. Let’s take a closer look at Machine Learning Complete and some of the other things found in the latest version.

ML Complete: In-depth

We mentioned that ML Complete would finish writing the code by itself. But it was created in order to address a situation where the list of possibilities keeps growing since the number of APIs to explore is growing as well. It was built with TensorFlow Lite and is actually built into the Dart analyzer. Developers can use the new version of Dart across all editors that support it. This is a big boost for custom software programming because developers can now avoid making mistakes and look at APIs much faster since all they have to do is to write just some of the needed symbols and the system will take care of the rest.

The Dart FFI

The big new feature development here is that this new FFI (Foreign Function Interface) enables calls into a C-based API system or a system library that is also created with C. This is something that the developer community has been asking for a while now, and Google has decided to listen because calling C code into Dart was becoming really problematic. While Google has addressed this situation to some extent, the Dart foreign function interface is still limited to deep integration into the Dart VM through native extensions. But this is still better than nothing.

dart:ffi foreign function interface

New Version of Flutter

We mentioned the biggest news which was ML Complete and the FFI, but there were some additional announcements that did not attract as much attention which is the unveiling of the new and improved Flutter 1.9. You can expect to find features such as:

  • All kinds of new support for iOS. This includes the anticipated unveiling of macOS Catalina as well as iOS 13. Developers will find new tools, features, and Material widgets in the Dart release.
  • Support for the new Xcode build system. This allows the new 64-bit support system to be available in all parts of the toolchain and lessens platform dependencies.
  • Good news for iPhone users who enjoy Flutter apps. The new improvements allow such apps to look much better thanks to the new draggable scrollbar in iOS 13. It can be activating by pressing on and holding the scrollbar itself or by dragging it in from the right side.
  • There is also support for the iOS dark mode, but this is fairly limited. Expect this to be a bigger deal in later releases.
  • If you own an Apple Watch or Apple TV, there is some good news for you as well. Experimental support for Bitcode is included in the new release which can technically be used to support things like watchOS and tvOS. The thing is that the platforms mentioned requiring Bitcode to be supported to make a request from the App Store.

Why is this New Release a Big Deal?

The latest release of the Dart programming language will be of great use to both developers and eventual end-users as well. As far as the developers are concerned, the introduction of the machine learning element makes life a lot easier since the code can be completed automatically with fewer mistakes. This also impacts the end-user as well because this means fewer bugs when you download and start using the app. Also, if you love having an iPhone but enjoy apps created by Google and more accurately with Flutter, they will appear much better on your phone. Usually, people do not care about which platform the app was created with, they just want it to work correctly. And this new release addresses some of the performance issues of Google apps running on iOS devices.

Also, we do see some steps forward in this new release. While they are not huge breakthroughs, it does include things that we did not see before, such as machine learning in the code creation process. Furthermore, Google is listening to the needs of the development community by making their jobs a lot easier. This is evident in both ML Complete and the new Dart: FFI Foreign Function Interface. Therefore, this release has something for everybody, and we can all look forward to even better user experience.

Google's Dart 2.5 SDK Features

Dart Has Really Come a Long Way

A lot of people do not know this, but Google originally envisioned Dart as something that could replace JavaScript. When this did not happen, Dart faced an uncertain future and was on the verge of extinction. Then it has been redesigned and repositioned as more of a client-optimized language for creating lightning-quick applications on any platform. Developers can use Dart to create mobile, web and server-side apps and command-line scripts. All of these features and the latest developments have spurred the growth of Dart. Therefore, expect the new releases of Dart to build even more developments released today, and there will be even cooler and exciting features in the years ahead.