Getting started with Dart
Let’s start by looking at some of the high-level aspects of the Dart language. Many languages borrow the best parts of languages that came before them, and Dart is no different in that regard. Dart aims to aggregate the benefits of many of the existing high-level languages that have mature language features, including the following:
- Productive tooling: This includes tools to analyze code, IDE plugins, and big package ecosystems. A language will struggle and fail if there isn’t great tooling available to developers.
- Garbage collection: This manages or deals with memory deallocation (mainly memory occupied by objects that are no longer in use). Java was one of the first high-level languages to use this approach, and it is now a common approach for languages to take. The Dart garbage collector is designed to be fast and not impact the user experience.
- Statically typed: Dart is type-safe and uses both static type checking and runtime...