What are we going to do today?
examine the Dart ecosystem
learn (a bit) about the Dart language
"Dart is a class-based, single-inheritance, pure object-oriented programming language. Dart is optionally typed and supports reified generics. The runtime type of every object is represented as an instance of class Type which can be obtained by calling the getter runtimeType declared in class Object, the root of the Dart class hierarchy.
"Dart programs may be statically checked. The static checker will report some violations of the type rules, but such violations do not abort compilation or preclude execution.
"Dart programs may be executed in one of two modes: production mode or checked mode. In production mode, static type annotations have absolutely no effect on execution with the exception of reflection and structural type tests. In checked mode, assignments are dynamically checked, and certain violations of the type system raise exceptions at run time."
developed at Google
developed because "Google cares about the Web"
specifically built for Google's own use
ECMA standard (ECMA-408): 4th Edition (December 2015)
see also https://dart.dev/guides/language/spec
targets multiple contexts
command-line applications
these run in the DartVM
front-end web development
these will typically transpile to Javascript
iOS/Android applications
makes use of Flutter (https://flutter.io)
Who is this guy?
Architect, Engineering Manager/Leader, "force multiplier"
Principal -- Neward & Associates
http://www.newardassociates.com
Educative (http://educative.io) Author
Performance Management for Engineering Managers
Author
Professional F# 2.0 (w/Erickson, et al; Wrox, 2010)
Effective Enterprise Java (Addison-Wesley, 2004)
SSCLI Essentials (w/Stutz, et al; OReilly, 2003)
Server-Based Java Programming (Manning, 2000)