Dart for Kotliners
Similarities and differences from the perspective of a Kotlin developer
--
When you are trying to learn something new it is always very helpful to relate the new concepts and information to your prior knowledge.
That is exactly what this article is meant for. Applying all your existing Kotlin knowledge and expertise to learn the Dart programming language as a first step to get into Flutter development.
We will cover the following topics:
· What is Dart?
· Hello world
· Type system
∘ Numbers
∘ Boolean
∘ String
∘ Dynamic
· Variables & Constants
· Operators
∘ Arithmetic operators
∘ Relational operators
∘ Logical operators
∘ Bitwise operators
∘ Type check and cast operators
∘ Nullability operators
∘ Operator overloading
· Conditional expressions
· Loops
· Functions
· Classes
∘ Extension functions
· Collections
∘ List
∘ Set
∘ Map
∘ Collection operations
· Asynchronous programming
∘ Threading and parallelism
· Generator functions
∘ Synchronous generation
∘ Asynchronous generation
· Dependency management
· IDEs
· Learning resources
What is Dart?
Dart is an open-source, general-purpose, object-oriented, statically typed programming language developed by Google in 2011 with the ambition to be a better alternative to JavaScript for building scalable complex web applications.
The first stable release was published in November 2013. In February 2018, Dart 2.0 was released embracing a new vision of being a “language uniquely optimized for client-side development for web and mobile”. And last month, Dart 2.12 was released featuring stable versions of sound null safety and Dart FFI.
Leaving behind the initial criticism and bad press that it had during its first years, Dart is rapidly gaining popularity thanks to the emergence of Flutter for building cross-platform apps.
Even though it hasn’t yet broken into the top 10 on the PYPL Popularity index (20th) nor in the TIOBE Index (36th), it is in the top 7 of the “Most Loved vs. Dreaded Languages” according to the results of the 2021 Stack Overflow annual survey.