{"id":2355,"date":"2020-01-10T20:56:55","date_gmt":"2020-01-10T19:56:55","guid":{"rendered":"http:\/\/dressler-hassloch.de\/?p=2355"},"modified":"2020-06-15T10:37:59","modified_gmt":"2020-06-15T09:37:59","slug":"eine-eigene-app","status":"publish","type":"post","link":"https:\/\/dressler-hassloch.de\/?p=2355","title":{"rendered":"Eine eigene App mit Kotlin"},"content":{"rendered":"\n<p>Das Projekt &#8220;Eine eigene App&#8221; schlummerte schon lange bei mir im Verborgenen. Es wurde immer wieder verschoben und im Fr\u00fchjahr 2019 war es dann soweit. Die Zeit war reif &#8230;.<\/p>\n\n\n\n<p>Das Entwickeln einer Android-App verlangt nach einer soliden Entwicklungsumgebung, mit einem dummen Editor kommt man da nicht richtig voran. &#8220;Android Studio&#8221; (AS) stand dann schnell fest.  Mit den mir bekannten Programmiersprachen war auch nichts zu machen, ich entschied mich f\u00fcr &#8220;Kotlin&#8221; (ein verbessertes Java). Beide Bestandteile sind f\u00fcr meine Zwecke kostenlos und kommen auch noch aus der gleichen Umgebung, n\u00e4mlich von Google bzw. von JetBrains. Alles ist gut auf meinem Windows-PC installierbar, nachdem ich auf 12GB Hauptspeicher und auf einen schnellen SSD-Speicher umger\u00fcstet habe. Damit waren die Hauptentscheidungen getrofen.<\/p>\n\n\n\n<p>Der Lernvorgang, Kotlin und AS waren mir fremd, gestaltete sich etwas holprig. Ich selbst lerne gern per Lehrbuch, nur zu Kotlin gab es im Fr\u00fchjahr 2019 noch keine deutschen Lehrb\u00fccher. Im ersten Versuch wollte ich AS und Kotlin gleichzeitig lernen, und das auch noch mit einem englischen Lehrbuch. Der Ansatz f\u00fchrte wohl zu einer lauff\u00e4higen App &#8220;HalloWorld&#8221;, aber diesr Weg war f\u00fcr mich nicht befriedigend.<\/p>\n\n\n\n<p>Im Sommer 2019 gab es dann deutschsprachige B\u00fccher, f\u00fcr mich die Geleghenheit zu einem Neubeginn. Zuerst habe ich mit dem Buch &#8220;<strong>Dawn Griffiths &amp;  David Griffiths, Kotlin von Kopf bis Fu\u00df<\/strong>&#8221;  pures Kotlin f\u00fcr die JavaVirtualMachine (JVM) gelernt und programmiert. Dabei konnte ich mich in die IntelliJ-Entwicklungsumgebung einarbeiten, die auch im AS eingesetzt wird. Kotlin ist keine einfache Sprache, wenn man von dem Python-Interpreter mit seiner recht einfachen IDLE-Umgebung kommt. IntelliJ mit seinen vielen Fenstern ist eigentlich auch nicht mein Stil. Aber die Beispiele im Buch waren gut, und so hielt ich das ganze Buch durch. Die Sprache Kotlin und die Entwicklungsumgebung IntelliJ waren gleich herausfordernd und\/oder nervend.<\/p>\n\n\n\n<p>Der n\u00e4chste Schritt war dann der Einstieg in die App-Entwicklung mit Kotlin und dem Android Studio. Das Buch &#8220;<strong>Thomas Theis, Einstieg in Kotlin &#8211; Apps entwickeln mit Android Studio<\/strong>&#8221; wird mich dabei weiter begleiten. Am Anfang gibt es dort so eine Art Crash-Kurs zur ersten App, der mir aber diesmal sehr viel mehr brachte. Die App konnte anschlie\u00dfend sowohl in einer Emulation auf dem PC als auch auf meinem echten Smartphone laufen. Mein Stand nach Seite 50 (von ca. 500): <\/p>\n\n\n\n<figure class=\"wp-block-image size-medium\"><img decoding=\"async\" loading=\"lazy\" width=\"169\" height=\"300\" src=\"https:\/\/dressler-hassloch.de\/wp-content\/uploads\/Screenshot_20200110-131538-169x300.png\" alt=\"\" class=\"wp-image-2357\" srcset=\"https:\/\/dressler-hassloch.de\/wp-content\/uploads\/Screenshot_20200110-131538-169x300.png 169w, https:\/\/dressler-hassloch.de\/wp-content\/uploads\/Screenshot_20200110-131538-768x1365.png 768w, https:\/\/dressler-hassloch.de\/wp-content\/uploads\/Screenshot_20200110-131538-576x1024.png 576w, https:\/\/dressler-hassloch.de\/wp-content\/uploads\/Screenshot_20200110-131538-624x1109.png 624w, https:\/\/dressler-hassloch.de\/wp-content\/uploads\/Screenshot_20200110-131538.png 1080w\" sizes=\"(max-width: 169px) 100vw, 169px\" \/><figcaption>Meine erste App auf dem Smartphone<\/figcaption><\/figure>\n\n\n\n<p>Zum besseren Verst\u00e4ndnis des Android Studio verhalf mir das Buch von <strong>Uwe Post &#8220;Android Apps entwickeln f\u00fcr Einsteiger&#8221;<\/strong>.<\/p>\n\n\n\n<p>Bericht wird fortgesetzt &#8230;.<\/p>\n\n\n\n<p>In den letzten 4 Wochen ruhte das App-Projekt mehr oder weniger, teilweise wegen ge\u00e4nderten Priorit\u00e4tet, teilweise auch wegen einer gewissen Frustration. Eine App ist doch ein recht komplexes Gebilde. Hinter der App &#8220;Hallo Welt&#8221; stecken ca. 2000 (zweitausend) Dateien in 500 (f\u00fcnfhundert) Verzeichnissen.  Gearbeitet habe ich wissentlich an ca. 10 Dateien, die anderen erzeugt das Android Studio automatisch. <\/p>\n\n\n\n<p>Ich konnte aber mittlerweile die Musterl\u00f6sungen des Buches aus dem Internet herunterladen und auch die ersten zwei Beispiele erfolgreich starten. Auch das war nicht ohne. Jetzt kann ich mich auf zwei Wegen vorw\u00e4rtsbewegen: selbst die Beispiele programmieren und\/oder mir die fertigen L\u00f6sungen ansehen.<\/p>\n\n\n\n<p>Das Buch von Thomas Theis ist jetzt (Mitte Juni) durchgearbeitet und ich habe auch alle Musterapps kompiliert und mir angesehen, teilweise auch ver\u00e4ndert und erweitert. 80 Apps sind eine stolze Menge. Man hat danach zumindest eine gewisse Vorstellung, wie Android-Apps entwickelt werden. Man lernt aber nicht, wie man im AS nach passenden und geeigneten &#8220;Objekten&#8221; suchen kann.<\/p>\n\n\n\n<p>Eine wirklich eigene App werde ich aber nur beginnen, wenn ich einen interessierten Partner vor Ort finde.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Das Projekt &#8220;Eine eigene App&#8221; schlummerte schon lange bei mir im Verborgenen. Es wurde immer wieder verschoben und im Fr\u00fchjahr 2019 war es dann soweit. Die Zeit war reif &#8230;. Das Entwickeln einer Android-App verlangt nach einer soliden Entwicklungsumgebung, mit einem dummen Editor kommt man da nicht richtig voran. &#8220;Android Studio&#8221; (AS) stand dann schnell [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1,11],"tags":[28],"_links":{"self":[{"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=\/wp\/v2\/posts\/2355"}],"collection":[{"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2355"}],"version-history":[{"count":4,"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=\/wp\/v2\/posts\/2355\/revisions"}],"predecessor-version":[{"id":2490,"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=\/wp\/v2\/posts\/2355\/revisions\/2490"}],"wp:attachment":[{"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2355"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2355"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dressler-hassloch.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2355"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}