# Dart

Dart is a client-optimized language for fast apps on any platform.

### Optimized for UI

Develop with a programming language specialized around the needs of user interface creation

* Mature and complete [async-await](https://dart.dev/codelabs/async-await) for user interfaces containing event-driven code, paired with [isolate-based concurrency](https://dart.dev/guides/language/language-tour#isolates)
* A programming language optimized for building user interfaces with features such as [sound null safety](https://dart.dev/null-safety), the [spread operator](https://dart.dev/guides/language/language-tour#spread-operator) for expanding collections, and [collection if](https://dart.dev/guides/language/language-tour#collection-operators) for customizing UI for each platform
* A programming language that is easy to learn, with a [familiar syntax](https://dart.dev/samples)

![source image from https://dart.dev/](https://3238169743-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MlIcf0SLyCJRYa3WNjW%2Fuploads%2FmLd4pFtsyZnJCR4EDiQA%2FScreen%20Shot%202021-10-13%20at%203.21.55%20PM.png?alt=media\&token=b4507b20-b954-41b9-8cdd-990e8d916a2c)

### Productive development

Make changes iteratively: use hot reload to see the result instantly in your running app.

* Make changes to your source code iteratively, using [hot reload](https://flutter.dev/docs/development/tools/hot-reload) to instantly see the effect in the running app
* Write code using a flexible type system with rich static analysis and powerful, [configurable tooling](https://dart.dev/guides/language/analysis-options)
* Do [profiling](https://flutter.dev/docs/development/tools/devtools/performance), [logging](https://flutter.dev/docs/development/tools/devtools/logging), and [debugging](https://flutter.dev/docs/development/tools/devtools/debugger) with your code editor of choice

### Fast on all platforms

Compile to ARM & x64 machine code for mobile, desktop, and backend. Or compile to JavaScript for the web.

* [AOT-compile](https://dart.dev/overview#native-platform) apps to native machine code for [instant startup](https://github.com/timsneath/time)
* Target the web with complete, mature, fast [compilers for JavaScript](https://dart.dev/overview#web-platform)
* Run [backend code](https://dart.dev/tutorials/server/httpserver) supporting your app, written using a single programming language
