About me ENDO Yasuyuki (2019/03~ freelance) https://github.com/eyasuyuki 2009~ Android development 2016~ iOS development 2019/03~ Flutter development 2019/04~ React Native development
Websites Flutter Official Website https://flutter.dev/ Dart Official Website https://www.dartlang.org/ Japan Flutter User Group https://flutter‑jp.connpass.com/ Dartlang Users JP ‑ Slack http://dartlang‑users‑jp‑invite.herokuapp.com/
Examples ‑ Simple YouTube Player React Native version From Barry Michael Doyle's tutorial. https://github.com/eyasuyuki/SimpleYouTubePlayer Flutter version https://github.com/eyasuyuki/simple‑youtube‑player
Easy to install 1. Download and extract Flutter SDK 2. Add flutter/bin to PATH environment 3. Use CLI command flutter doctor 4. Install plugin to Android Studio/Visual Studio Code 5. Run iOS Simulator/Android emulator 6. flutter create -a kotlin -i swift 7. Update to new version flutter upgrade
Everything is Object https://www.dartlang.org/guides/language/language‑tour#important‑concepts Every object is an instance of class numbers, functions, and null are object All object inherit from Object class
Strongly typed programming language https://www.dartlang.org/guides/language/sound‑dart Type inference code example main() { var x = 5; print(x); x = 'text'; // compile error }
this keyword refers current instance (like Java) https://www.dartlang.org/guides/language/language‑tour#constructors code example class Point { num x, y; Point(num x, num y) { this.x = x; this.y = y; } }
=== operator was not supported (use identical ) https://api.dartlang.org/stable/2.2.0/dart‑core/identical.html code example class X { final String _value; X(this._value); } main() { var a = X('a'); var b = X('a'); print(identical(a, b)); // false var p = X('b'); var q = p; print(identical(p, q)); // true }
Hight productivity (2/3) CLI commands flutter doctor flutter create -a kotlin -i swift flutter run Run flutter packages get after editing pubspec.yaml flutter clean dartfmt