The missing Android guide

Was eigentlich noch in der Android Dokumentation fehlt

Michael Gruczel

Worum geht es ?

Ein guter Entwickler kennt sich nicht nur mit der Programmiersprache aus,
sondern auch mit Frameworks, build pipelines und tools.
Das ist bei Android auch so
und genau da fehlt es an Dokumentation.
Es geht also um unsere Lessons learned

Ein fiktiver Entwicklungszyklus

UX

Fake until you make it

Development

Weniger boilerplate durch geschickten Einsatz von Bibliotheken

Beispiel Butterknife

Weniger boilerplate durch geschickten Ensatz von Bibliotheken

Beispiel Retrofit

Weniger boilerplate durch geschickten Ensatz von Bibliotheken

Beispiel Retrofit

UI von Logik trennen

Aus irgendeinem Grund legt Android dem Entwickler nahe backend Tasks direkt in der Activity zu definieren

UI von Logik trennen

Beispiel Bus Systeme

UI von Logik trennen

Beispiel MVP

Dependency injection is a no brainer

Beispiel Dagger

Let's compare code

https://github.com/michaelgruczel/The-missing-Android-Guideline/tree/master/android-studio-workspace/Examples

Backend

what about testing

Focus on unit testing


Image: https://www.thoughtworks.com/insights/blog/architecting-continuous-delivery

Focus on unit testing

Beispiel Mocking

Falls UI Testing dann bewusst wählen

Automation, automation, automation

Build a debug flavour for testing

Beispiel Scalpel

Build a debug flavour for testing

Beispiel Stehto

Build a debug flavour for testing

Beispiel Stehto

Betrieb

Userverhalten tracken

Beispiel Adjust

A/B tests

Beispiel Apptimize

Crashüberwachung

Beispiel Fabric / Crashlytics

Crashüberwachung

Beispiel Fabric / Crashlytics

Crashüberwachung

Beispiel Fabric / Crashlytics

change Themes

reveal.js comes with a few themes built in:
Black (default) - White - League - Sky - Beige - Simple
Serif - Blood - Night - Moon - Solarized