To understand where the language's flexibility came from, we need to know how we can run Dart code. This is done in two ways:
Have a look at the following diagram: