Aufsetzen, Testen und Betrieb einer Android-App
Von Michael Gruczel
()
Über dieses E-Book
Ähnlich wie Aufsetzen, Testen und Betrieb einer Android-App
Titel in dieser Serie (100)
Einstieg in Google Go Bewertung: 0 von 5 Sternen0 BewertungenIT Wissensmanagement: Theorie und Praxis Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Bewertung: 0 von 5 Sternen0 BewertungenAlgorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenServiceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Bewertung: 0 von 5 Sternen0 BewertungenSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Bewertung: 0 von 5 Sternen0 BewertungenÜberzeugende Präsentationen: Konzeption, Technik und Design Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Executive Briefing Bewertung: 0 von 5 Sternen0 BewertungenQualitätssicherung mit JavaScript und PHP Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Strategie und Planung Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Technologiegrundlagen Bewertung: 0 von 5 Sternen0 BewertungenJava EE Security Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenCL Bewertung: 0 von 5 Sternen0 BewertungenZend Framework 2: Für Einsteiger und Umsteiger Bewertung: 0 von 5 Sternen0 BewertungenUX Design für Tablet-Websites: Ein Überblick Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Bewertung: 0 von 5 Sternen0 BewertungenNFC: Near Field Communication für Android-Entwickler Bewertung: 5 von 5 Sternen5/5JavaScript auf dem Server Bewertung: 0 von 5 Sternen0 BewertungenHTML5 Security Bewertung: 0 von 5 Sternen0 BewertungenHTML5 für Mobile Web Bewertung: 0 von 5 Sternen0 BewertungenAmazon Web Services für .NET Entwickler Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Anforderungsmanagement: Work Items und Prozessvorlagen Bewertung: 0 von 5 Sternen0 BewertungenMobile Business: Was Entscheider morgen wissen müssen Bewertung: 0 von 5 Sternen0 BewertungenC++: Kurzportträt einer zeitlosen Sprache Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Management Bewertung: 0 von 5 Sternen0 BewertungenApache Tapestry: Einstieg in die komponentenorientierte Webentwicklung Bewertung: 0 von 5 Sternen0 BewertungenGeolocation mit PHP: Foursquare-API, Google Places & Qype Bewertung: 0 von 5 Sternen0 BewertungenWebentwicklung mit dem Play Framework Bewertung: 0 von 5 Sternen0 BewertungenBPM: Strategien und Anwendungsfälle Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnliche E-Books
Software Development Trends: Wegweisende Beiträge für eine neue IT: Wegweisende Beiträge für eine neue IT Bewertung: 0 von 5 Sternen0 BewertungenSharePoint Kompendium - Bd. 16 Bewertung: 0 von 5 Sternen0 BewertungeniOS Essentials: Frameworks, Tools und Twitter API Bewertung: 0 von 5 Sternen0 BewertungenTesting mit Visual Studio 2012: Testing mit Visual Studio 2012 Bewertung: 0 von 5 Sternen0 BewertungenApps mit Azure Bewertung: 0 von 5 Sternen0 BewertungenAngular 2: Moderne Frontends für alle Plattformen entwickeln Bewertung: 0 von 5 Sternen0 BewertungenEinblicke in C# 6.0 Bewertung: 0 von 5 Sternen0 BewertungenReact Native: Native Apps parallel für Android und iOS entwickeln Bewertung: 0 von 5 Sternen0 BewertungenCDI - Dependency Injection in Java EE 7: Dependency Injection in Java EE 7 Bewertung: 0 von 5 Sternen0 BewertungenASP.NET Core: Eine Einführung Bewertung: 0 von 5 Sternen0 BewertungenXtend beyond Java: DSL für mobile Business-Apps Bewertung: 0 von 5 Sternen0 BewertungenJavaFX Rendering & 3D Bewertung: 0 von 5 Sternen0 BewertungenExtensions für TYPO3: So entwickeln Sie maßgeschneiderte TYPO3-Erweiterungen Bewertung: 0 von 5 Sternen0 BewertungenLogging: Schnelleinstieg Bewertung: 0 von 5 Sternen0 BewertungenWebentwicklung mit dem Play Framework Bewertung: 0 von 5 Sternen0 BewertungenExpertentipps zu Angular: Neuerungen in Angular 6, Umgang mit Microservices, Performanz und UX-Design Bewertung: 0 von 5 Sternen0 BewertungenModerne Webanwendungen mit AngularJS Bewertung: 0 von 5 Sternen0 BewertungenReact: Grundlagen, fortgeschrittene Techniken und Praxistipps – mit TypeScript und Redux Bewertung: 0 von 5 Sternen0 BewertungenAgile Softwareentwicklung mit C# (Microsoft Press): Best Practices und Patterns für flexiblen und adaptiven C#-Code Bewertung: 0 von 5 Sternen0 BewertungenJavaScript und Ajax: Das Praxisbuch für Web-Entwickler Bewertung: 0 von 5 Sternen0 BewertungenMicrosoft AJAX: AJAX Libary, ASP .NET 2.0 Extensions, AJAX Control Toolkit Bewertung: 0 von 5 Sternen0 BewertungenGraphQL: Eine Einführung in APIs mit GraphQL Bewertung: 0 von 5 Sternen0 BewertungenErfahrungen mit Eclipse 4: aus der Praxis für die Praxis Bewertung: 0 von 5 Sternen0 BewertungenSpring: Vier Perspektiven auf Framework und Ökosystem Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Java-Entwickler Bewertung: 0 von 5 Sternen0 BewertungenSoftware entwickeln mit C#, WPF und dem MVVM-Konzept Bewertung: 0 von 5 Sternen0 BewertungenAndroid mit Kotlin – kurz & gut: Inklusive Android 8 und Android Studio 3.0 Bewertung: 0 von 5 Sternen0 BewertungenEnterprise Java Web Services Bewertung: 0 von 5 Sternen0 Bewertungen.NET-Praxis: Tipps und Tricks zu .NET und Visual Studio Bewertung: 0 von 5 Sternen0 BewertungenDependency Injection in Java: Testing mit CDI-Unit und DI-Frameworks Bewertung: 0 von 5 Sternen0 Bewertungen
Programmieren für Sie
JavaScript kurz & gut Bewertung: 3 von 5 Sternen3/5Linux Grundlagen - Ein Einstieg in das Linux-Betriebssystem Bewertung: 0 von 5 Sternen0 BewertungenProgrammieren von Kopf bis Fuß Bewertung: 4 von 5 Sternen4/5Python kurz & gut: Für Python 3.x und 2.7 Bewertung: 3 von 5 Sternen3/5Algorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenProgrammieren lernen mit Python 3: Schnelleinstieg für Beginner Bewertung: 0 von 5 Sternen0 BewertungenRaspberry Pi: Mach's einfach: Die kompakteste Gebrauchsanweisung mit 222 Anleitungen. Geeignet für Raspberry Pi 3 Modell B / B+ Bewertung: 0 von 5 Sternen0 Bewertungen.NET-Praxis: Tipps und Tricks zu .NET und Visual Studio Bewertung: 0 von 5 Sternen0 BewertungenC von Kopf bis Fuß Bewertung: 3 von 5 Sternen3/5Linux Befehlsreferenz: Schnelleinstieg in die Arbeit mit der Konsole, regulären Ausdrücken und Shellscripting Bewertung: 0 von 5 Sternen0 BewertungenEigene Spiele programmieren – Python lernen: Der spielerische Weg zur Programmiersprache Bewertung: 0 von 5 Sternen0 BewertungenSQL von Kopf bis Fuß Bewertung: 4 von 5 Sternen4/5Weniger schlecht programmieren Bewertung: 4 von 5 Sternen4/5Hacken mit Python und Kali-Linux: Entwicklung eigener Hackingtools mit Python unter Kali-Linux Bewertung: 0 von 5 Sternen0 BewertungenMicrocontroller für das IoT Bewertung: 0 von 5 Sternen0 BewertungenMikrocontroller in der Elektronik: Mikrocontroller programmieren und in der Praxis einsetzen Bewertung: 0 von 5 Sternen0 BewertungenGit kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenDie ultimative FRITZ!Box Bibel - Das Praxisbuch 2. aktualisierte Auflage - mit vielen Insider Tipps und Tricks - komplett in Farbe Bewertung: 0 von 5 Sternen0 BewertungenPython | Schritt für Schritt Programmieren lernen: Der ultimative Anfänger Guide für einen einfachen & schnellen Einstieg Bewertung: 0 von 5 Sternen0 BewertungenNew Game Plus: Perspektiven der Game Studies. Genres - Künste - Diskurse (Bild und Bit. Studien zur digitalen Medienkultur) Bewertung: 0 von 5 Sternen0 BewertungenDas große Python3 Workbook: Mit vielen Beispielen und Übungen - Programmieren leicht gemacht! Bewertung: 4 von 5 Sternen4/5Programmieren für Einsteiger: Teil 1 Bewertung: 0 von 5 Sternen0 BewertungenPython lernen – kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenSoftwareentwicklungsprozess: Von der ersten Idee bis zur Installation Bewertung: 0 von 5 Sternen0 BewertungenDas Excel SOS-Handbuch: Wie sie Excel (2010-2019 & 365) schnell & einfach meistern. Die All-in-One Anleitung für ihren privaten & beruflichen Excel-Erfolg! Bewertung: 0 von 5 Sternen0 BewertungenHTML5-Programmierung von Kopf bis Fuß: Webanwendungen mit HTML5 und JavaScript Bewertung: 0 von 5 Sternen0 BewertungenRaspberry Pi: Einstieg • Optimierung • Projekte Bewertung: 5 von 5 Sternen5/5Android-Programmierung kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenPython programmieren lernen: Der spielerische Einstieg mit Minecraft Bewertung: 0 von 5 Sternen0 BewertungenC++: Eine kompakte Einführung Bewertung: 0 von 5 Sternen0 Bewertungen
Rezensionen für Aufsetzen, Testen und Betrieb einer Android-App
0 Bewertungen0 Rezensionen
Buchvorschau
Aufsetzen, Testen und Betrieb einer Android-App - Michael Gruczel
GmbH
1 Entwicklung einer App
Die offizielle Android-Dokumentation ermöglicht einen einfachen Einstieg in die Entwicklung von Android-Apps. Open-Source-Frameworks oder Tools anderer Anbieter sind hier nicht mit einbezogen, ebenso fehlen Hinweise auf Design-Pattern, die unschöne Designentscheidungen im Android-SDK ausgleichen könnten. Dies führt häufig zu unsauberem und unnötigem Code sowie langsamen und fehleranfälligen Anwendungen. Genau hier soll dieser shortcut einsetzen. Er bildet eine Weiterführung der existierenden Android-Dokumentation.
Die offizielle Android-Dokumentation beschränkt sich hauptsächlich auf die native Entwicklung von Android-Apps mit den vom SDK zur Verfügung gestellten Mitteln. So wie in der Java-Entwicklung die eigene Anwendung mit externen Frameworks wie Spring, Hibernate oder dergleichen erweitert wird, gilt dies ebenso für die Entwicklung von Android-Apps. Häufig handelt es sich hierbei um andere Frameworks als die bereits bekannten. Dieser shortcut richtet sich hauptsächlich an Java-Entwickler, die in die Android-Entwicklung eingestiegen sind, aber noch keine tieferen Erkenntnisse gesammelt haben. Die hier vorgestellten Inhalte zeigen wichtige Werkzeuge und Methoden auf, um von unstrukturierten Anwendungen zu gut strukturierten und leicht zu pflegenden Anwendungen zu kommen, und wie man diese leichtgewichtig testen und betreiben kann.
Die Beschreibungen erheben keinen Anspruch an Vollständigkeit, vielmehr beschreibe ich die Erkenntnisse, die bei uns innerhalb der Android-Entwicklung von entscheidender Bedeutung waren und uns die Entwicklung deutlich vereinfacht haben. Der shortcut teilt sich in drei Kapitel, die zeitlich klassischerweise aufeinander folgen (Abb. 1.1):
Entwicklung der App
Testen der App
Betreiben der App
Abbildung 1.1: Klassische Entwicklungszyklen
Das erste Kapitel fokussiert auf die Entwicklung einer nativen Android-App. Ich möchte auf einige wichtige Elemente und Frameworks in der Entwicklung von nativen Android-Apps verweisen. Android-Code kann schnell zu Spaghetticode mutieren. Die hier vorgestellten Konzepte und Bibliotheken helfen bei der technisch sauberen Strukturierung der Anwendung und der schnellen Entwicklung. Ich werde deshalb diejenigen Bibliotheken und Pattern vorstellen, die mir am stärksten geholfen haben. In vielen Fällen gibt es andere Bibliotheken, die einen ähnlichen Zweck erfüllen, die Konzepte dahinter sind meist sehr ähnlich.
Wie werde ich den ganzen Boilerplate-Code los?
Android-Code ist voller Boilerplate-Code. Unter Boilerplate-Code verstehe ich Code, der dem Zweck dient, das Framework zu verwenden – Code also, von dem man in einem perfekten Framework erwarten würde, dass er gar nicht nötig ist. Die gefühlt hohe Menge an derartigem Code bei der Android-Entwicklung hat verschiedene Ursachen. So müssen zum Beispiel die Lifecycles der Anwendung verwaltet werden, und es muss eine Verbindung zwischen deklarativen Beschreibungen in Form von XML (zum Beispiel Layouts) und Code hergestellt werden. Ebenso muss eine große Menge technischer Logik implementiert werden. Dieser Code ist nicht nur schädlich, weil er geschrieben werden muss und somit potenziell Fehler enthalten kann, sondern auch, weil er von der eigentlichen Geschäftslogik ablenkt und sich mit ihr leicht vermischt. Zudem kostet das Schreiben Zeit, die sinnvoller in die Entwicklung von fachlicher Logik investiert werden sollte.
Über Annotationen kann man hier viel Zeit und Code einsparen. Es gibt unzählige Frameworks dafür. Einige Frameworks bieten Annotationen, um zum Beispiel die Ausführung von Code explizit auf einen Background-Thread oder auf den UI-Thread zu verlegen, Rest Calls auszuführen, Scopes zu definieren, den Aufruf von Methoden an bestimmte Lifecycle-Phasen zu binden oder Daten mit dem Storage zu synchronisieren. Ich werde dies anhand von zwei Beispielen erläutern. Bei der Android-Entwicklung sollte man regelmäßig prüfen, ob nicht wesentliche Vereinfachungen möglich sind. Unter http://androidannotations.org bekommt man einen Eindruck davon, wie Code mit Boilerplate im Vergleich zu Code mit Annotationen aussehen kann.
Butterknife
Als erstes Beispiel möchte ich hier Butterknife [1] zeigen,