Dart is an open source language developed in Google with the aim of allowing developers to use an object-oriented language with static type analysis.

What is Dart?

Dart is an open source language developed in Google with the aim of allowing developers to use an object-oriented language with static type analysis. Since the first stable release in 2011, Dart has changed quite a bit, both in the language itself and in its primary goals. With version 2.0, Dart’s type system went from optional to static, and since its arrival, Flutter (we’ll explain later) has become the main target of the language.

 

What makes Dart special?

Unlike many languages, Dart was designed with the goal of making the development process as comfortable and fast as possible for developers. So it comes with a fairly extensive set of built-in tools such as its own package manager, various compilers / transpilers, a parser and formatter. Also, the Dart virtual machine and Just-in-Time build make code changes immediately executable.
Once in production, the code can be compiled in native language, so no special environment is required to run. In case of web development, Dart is transpiled into JavaScript.

As for the syntax, Dart’s is very similar to languages like JavaScript, Java and C ++, so learning Dart by knowing one of these languages is a matter of hours.
In addition, Dart has great support for asynchrony, and working with generators and iterables is extremely easy.

 

Where can I use Dart?

Dart is a general-purpose language, and you can use it for almost anything:

Flutter

Flutter is a Dart framework for creating cross-platform applications with a single code. Unlike other multiplatform frameworks such as Ionic, the code of a Flutter application is compiled into native code, so the performance achieved is superior to applications based on web-views. Also, unlike React Native, Flutter doesn’t use native components, instead it comes with its own components, called widgets, so the same app will look the same on any device, regardless of its operating system or version. Thanks to this, the developer does not have to worry about the design of his application looking bad on older devices.

In addition to mobile applications, Flutter can also make web pages and desktop applications, although support for web pages is in beta, and for desktop applications in technical preview, so whoever wants to use them will have to wait a while longer. to make it stable.

Here are some examples of applications developed with Flutter:

For those interested in learning more about Dart and Flutter, then there is a list of various resources that may be helpful: