Dart

Quickstart (create + run)

bash
dart create my_app
cd my_app
dart run

Project setup (pub add deps)

bash
dart pub add http
# edits pubspec.yaml

Variables (var/final/const)

dart
var n = 1;         // inferred, mutable
final name = "Sam"; // runtime constant, immutable
const pi = 3.14159; // compile-time constant

Datatypes (List/Map/Set)

dart
final xs = <int>[1, 2, 3];
final m = <String, int>{"a": 1};
final s = <String>{"a", "b"};

Iteration (for, for-in, where/map)

dart
final xs = [1, 2, 3];

for (var i = 0; i < xs.length; i++) {
  print(xs[i]);
}

for (final x in xs) {
  print(x);
}

final evens = xs.where((x) => x.isEven).toList();
final doubled = xs.map((x) => x * 2).toList();

Functions (named + optional args)

dart
int add(int a, int b) => a + b;

String greet(String name, {String prefix = "hi"}) {
  return "$prefix $name";
}

Classes (constructor + field)

dart
class User {
  final String email;
  User(this.email);
}