Dart

Join the Dart Track
Dart is a general purpose programming language which has seen a rise in popularity for it's uses in mobile and web application development.
Join the Dart Track
Track mentors

6 Mentors

Our mentors are friendly, experienced Dart developers who will help teach you new techniques and tricks.
Track students

6,641 Students

Join thousands of students who have enjoyed learning and improving their skills by taking this track.
Track exercises

37 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Dart

class HelloWorld {
  void main() {
    print("Hello World"):
  }
}

Dart brings object-oriented and typing together with the flexibility that JavaScript is known for. It is designed to simplify common programming tasks. In recent years, it's popularity amongst the software development community has grown tremendously.

To dig deeper into Dart, click here.

The primary concepts baked into the making of the language were:

  • It is simple, object-oriented, and familiar.
    • The language derives its syntax from Java and JavaScript; as well as Smalltalk.
  • It has a built-in concurrency model that is easy to learn and use.
  • It provides tools out of the box to help development efforts.
  • It has strong support via many standard libraries.
  • It is architecture-neutral and portable.
  • It executes with high performance for practical applications and not just benchmarks.

Dart is a very versitile language that can be used in a variety of different ways:

  • Dart code can be transpiled into JavaScript for web development, typically using AngularDart.
  • Application servers can be written using Dart.
  • Cross-platform mobile application development can be achieved through a popular framework called Flutter.
  • Google Firebase APIs can be integrated into Dart apps using the libraries written by the Firebase team.

There is a rich ecosystem springing up around Dart because the standard (built-in) libraries can be supplemented by open source libraries found on Pub.

Join the Dart track

A tremendous learning opportunity to explore the depth of your own knowledge

Exercism is fantastic in learning new languages but that is not the extent of it. If you are a "more experienced" programmer you may have encountered impostor syndrome: the idea you don't really know what you think you know. Exercism lets you solve problems and put them in the space of open feedback which is a tremendous learning opportunity to explore the depth of your own knowledge. Even if you have been programming in a language for awhile it is worth checking into Exercism to see where you stand with current implementation practices.

Relaxed. Encouraging. Supportive.

Meet the Dart Track mentors

Once you join the Dart language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Ammar Atef

Ammar Atef Blog

2017 Graduate with experience in Android and Cross-platform mobile development since I was a junior student. Enthusiast about DevOps tools and open-source. Active contributor in GitHub and hosting some open-source projects too.
Avatar of Jay Haase

Jay Haase https://github.com/jayhaase

I code and mentor with readability and language standards in mind. One of my favorite coding books is Refactoring: Improving the Design of Existing Code by Martin Fowler
Avatar of Jake Varness

Jake Varness GitHub Page

I've written a couple of blogs about Dart, and I've also contributed to the Dart track on Exercism!
Avatar of Max Weber

Max Weber Current Flutter Website

Since the GoogleI/O 2019 I am fully entered the hype train of Flutter and could not stop since then. I started several projects since then and worked with Aqueduct and Dart a lot.
Avatar of Guillaume Diallo-Mulliez

Guillaume Diallo-Mulliez

I am a mobile applications developer. Coming from the React Native universe, I am now working with and loving Flutter and Dart to build mobile applications.
Avatar of Stargator

Stargator

Since August 2017, I have been a maintainer on the Dart track on Exercism. I've developed several scripts in Dart as well as used AngularDart on an enterprise application.
Fun. Challenging. Interesting

Community-sourced Dart exercises

These are a few of the 37 exercises on the Dart track. You can see all the exercises here.

Raindrops
easy
equality
strings
conditionals
Minesweeper
medium
classes
games
lists
logic
loops
math
object oriented programming
Anagram
easy
equality
strings
conditionals
loops
Pangram
easy
pattern matching
regular expressions
sets
strings
Beer Song
easy
loops
strings
text formatting
Difference Of Squares
easy
integers
math
Passionate. Knowledgeable. Creative.

Meet the Dart Track maintainers

The Dart Maintainers are the brains behind the Dart Track. They spend their spare time creating interesting and challenging exercises that we can all learn from. We are incredibly grateful for their hard work. Here are the bios of a few of the maintainers of this track.

Avatar of Jake Varness

Jake Varness dev.to

Team Lead and Senior Software Engineer at Cerner Corporation, husband, father, nerd
Avatar of Dinesh Ahuja

Dinesh Ahuja

I only trust code written by me. I only trust food cooked by me. I only trust people trusted by me(Wait...🤔?)
Avatar of Stargator

Stargator

This maintainer has not added their bio yet.

Get started with the Dart track. As with everything on Exercism, it's 100% free!

Join the Dart Track