Boehrsi.de - Blog

Android Studio 4.1

Erstellt am event Uhr von account_circle Boehrsi in label Development
Android Studio 4.1 Bild

Auch wenn der Release bereits mehr als einen Monat zurückliegt, ich kenne einige Entwickler die Aufgrund von eventuellen Problemen nach Updates relativ lange mit der Aktualisierung warten. Aus diesem Grund hier das etwas verspätete Update zum Release von Android Studio 4.1.
Nachdem in den letzten Releases viel optimiert und stabiler gemacht wurde, gibt es nun vor allem wieder neue und sehr praktische Features. Den Anfang macht der Database Inspector open_in_new, welcher es euch ohne Zusatztools erlaubt Datenbanken auf euren Geräten zu debuggen. Änderungen werden dabei sogar direkt in der App sichtbar. Weiter geht es mit einem Feature welches mir persönlich einiges bringt, denn man kann den Emulator nun direkt ins Android Studio Hauptfenster integrieren. Entsprechend spart man sich das herumschieben.

Related Links

Service Umstellungen - Mein Ablaufplan

Erstellt am event Uhr von account_circle Boehrsi in label Development
Service Umstellungen - Mein Ablaufplan Bild

Letzten Sonntag erfolgte der erste Live-Test meines neuen Service-Setups und ich konnte den neuen Such-Service direkt online lassen. Als Backup verweilt das alte Setup weiterhin auf dem Server, aber bis dato läuft alles recht problemlos. Ich bin mit dem Ablauf des Deployments trotz eher minimalistischer Planung sehr zufrieden und aus diesem Grund möchte ich meinen Ablaufplan gerne mit euch teilen. Vielleicht hat der eine oder andere ähnliche Deployments geplant und findet hier die eine oder andere interessante Anregung.

Für die Umsetzung bin ich wie folgt vorgegangen:

Related Links

Such-Service Update am Sonntag

Erstellt am event Uhr von account_circle Boehrsi in label Development
Such-Service Update am Sonntag Bild

Nachdem es bereits für letztes Wochenende angekündigt war, wird dieses Wochenende ein weiterer Versuch unternommen einen Live-Test meines neuen Such-Services durchzuführen. Dafür wird im laufe des Sonntags der aktuelle Service deaktiviert und die Suche wird nicht verfügbar sein.
Der neue Service wird dann zusammen mit Interface-Verbesserungen getestet und falls alles funktional ist aktiv gelassen. Bei Problemen erfolgt ein Rollback zur alten Suche.
Das Ganze ist in Kotlin geschrieben und erlaubt mir relativ einfach weitere Module, wie z.B. das Kommentarsystem, einzubinden. Dadurch kann ich auf Boilerplate Code bei der eigentlichen Service Implementierung verzichten und Services zusammenfassen, um RAM zu sparen.
Ich hoffe dadurch flexibler und schneller zu sein, wenn es darum geht neue Dinge zu entwickeln, ohne die Vorteile von getrennten Services einzubüßen, sofern ich selbige benötige.

Related Links

Testlauf für neuen Such-Service geplant

Erstellt am event Uhr von account_circle Boehrsi in label Development
Testlauf für neuen Such-Service geplant Bild

Während mein eigentlicher Blog als statische Webseite ausgeliefert wird und entsprechend eher simple gestrickt ist, gibt es Services die selbige erweitern. Dazu gehören die Suche und die Kommentare. Wie bereits erwähnt arbeite ich aktuell an einer neuen Version von diesen beiden Diensten, mit einem angepassten und flexiblen Unterbau und einem optimierten Speicherverbrauch.
Der Rewrite meines Such-Services geht dabei sehr gut voran und ein erster Test steht vor der Tür. Geplant ist einige Tests im Trockendock innerhalb dieser Woche durchzuführen und am Wochenende bereits die Umstellung zu wagen, sofern alles läuft. Entsprechend kann es am Wochenende zu kurzen Ausfällen im Bereich der Suche kommen. Alle anderen Komponenten des Blogs sollten ohne Probleme funktionieren, was ein weiterer Vorteil einer derartigen Plattformstruktur ist.
Warum ich die Services neu entwickle, was ich dabei gelernt habe und wie ich mittlerweile zu Kotlin stehe, werde ich zeitnah mit euch hier im Blog teilen.

Flutter Community - Gute Plugins und interessante Blogbeiträge

Erstellt am event Uhr von account_circle Boehrsi in label Development
Flutter Community - Gute Plugins und interessante Blogbeiträge Bild

In der Flutter Welt gibt es viele Plugins, viele Blogs und generell viele Quellen für Informationen. Das ist gut so, doch manchmal hätte man gerne eine Untermenge von diesen ganzen Daten. Genau diese Untermenge an kuratierten Informationen und gut verwalteten Plugins will das Flutter Community Projekt bereitstellen. Auf Medium open_in_new findet ihr diverse hilfreiche Beiträge und auf GitHub open_in_new gibt es eine Liste von Plugins die seitens der Flutter Community verwaltete werden. Dazu gehören optimierte Versionen von bekannten Plugins wie android_intent_plus open_in_new, aber auch andere hilfreiche Plugins wie flutter_blurhash open_in_new, sticky_headers open_in_new oder get_it open_in_new.
Auch wenn die Pub.dev Website open_in_new um einiges besser geworden ist, wenn es darum geht einen Showcase für interessante Plugins zu bieten, kann die Liste der Flutter Community definitiv viel nützliches für den geneigten Flutter Entwickler bieten.
Solltet ihr im Flutter Bereich unterwegs sein, kann ich euch nur empfehlen sich die Infos genauer anzusehen, vielleicht findet ihr das eine oder andere praktische für den täglichen Gebrauch.

Related Links

GitHub Universe - Das Programm steht fest

Erstellt am event Uhr von account_circle Boehrsi in label Development
GitHub Universe - Das Programm steht fest Bild

In ziemlich genau zwei Wochen, nämlich vom 08. bis 10. Dezember, findet das GitHub Universe Event statt und ihr könnt euch bereits jetzt euren Programmplan zusammenstellen open_in_new. Bei Interesse könnt ihr aus einem der drei Tracks Developer, Enterprise und University wählen. Eine bunte Auswahl an Vortragenden zu verschiedensten Themen im GitHub Kosmos gibt es. Solltet ihr im Open Source Bereich unterwegs sein oder einfach nur hin und wieder mit Git arbeiten, dürfte ein Blick ins Programm des Events nicht schaden.
Unter anderem könnt ihr euch zum Thema Security und GitHub Actions informieren, was für GitHub Nutzer sehr interessant sein dürfte. Ich habe zuletzt angefangen meine ersten GitHub Actions zu nutzen und bin sehr zufrieden. Ich werde mir das Event auf jeden Fall näher anschauen und werde mir wohl am Wochenende mein Programm zusammenstellen. Wie sieht es bei euch aus, seid ihr auf GitHub aktiv und interessiert euch GitHub Universe?

Related Links

Dart Null Safety Beta erschienen

Erstellt am event Uhr von account_circle Boehrsi in label Development
Dart Null Safety Beta erschienen Bild

In den letzten Monaten arbeitete ich sehr aktiv mit Kotlin und Dart, aus diesem Grund bin ich sehr froh das Dart im Bereich Null Safety vorankommt. Seit wenigen Tagen ist Null Safety in Dart als Beta Feature verfügbar und kann genutzt werden. Dafür muss das genutzte Dart Environment auf mindestens 2.12 gesetzt werden, weitere Infos dazu gibt es in der offiziellen Dart Dokumentation open_in_new. Für alle die mit dem Thema nicht Ad-Hoc etwas anfangen können, im unteren Teil der News gibt es ein schönes kleiner Videos, welches Null Safety schnell und einfach erklärt.
Mir wird dieses Feature, sobald es stabil verfügbar ist und alle Plugins aktualisiert wurden, definitiv helfen besseren Code zu schreiben. Zu diesem Schluss komme ich auf Grund meiner Erfahrungen mit Java und Kotlin. Denn während man in Java Null einfach so nutzen kann, ist Kotlin strikter und wirft schon bei der Implementierung wesentlich mehr Fehler, sodass man den Code sicher und sauber schreiben kann.
Initial ist an viele stellen ein Umdenken nötig, gerade in langen Ketten von Methodenaufrufen ist man vielleicht etwas genervt und ein paar Abläufe müssen vielleicht sogar generell überdacht werden, aber am Ende lohnt es sich. Die Menge an Null Pointer Exceptions, wie man sie aus Java kennt, verschwindet quasi sofort. Der Code erlaubt es dem Entwickler generell mehr Annahmen zu treffen und sich bezüglich der Werte von Variablen sicher sein zu können. Es muss nur noch einmal über das Für und Wider von Null für eine bestimmte Variable nachgedacht werden, danach hilft einem die IDE.
Wichtig ist abschließend, das Feature als Hilfe anzunehmen und es zu verwenden, denn es überall erzwungen zu überschreiben macht nicht nur das Feature an sich nutzlos, sondern auch den Code fehleranfällig und einfach gesagt schlechter. Und das will ja keiner, denn ein guter Entwickler kümmert sich um seinen Code und ein guter Entwickler will sauberen und performanten Code.

Related Links

Flutter Complete Reference - Der Guide zum Flutter lernen

Erstellt am event Uhr von account_circle Boehrsi in label Development
Flutter Complete Reference - Der Guide zum Flutter lernen Bild

Es gibt viele Wege um etwas zu lernen und ich persönlich finde im Kontext von Programmiersprachen vor allem echte Beispiele und damit verbunden eine gute Dokumentation sehr wichtig.
Solltet ihr Interesse an Flutter haben und ein umfangreiches Kompendium (auf englisch) suchen, inklusive Beispielen und diversen weiteren Informationen, verpackt in eine große Reise quer durch das Flutter Universum, dann solltet ihr euch vielleicht mal Flutter Complete Reference ansehen.
Ich selbst kam leider noch nicht dazu mir das Buch, welches digital und als gedruckte Variante verfügbar ist, anzuschauen, aber die Bewertungen auf z.B. Amazon klingen vielversprechend. 35 € für die Kindle Variante und ca. 49 € für das gedruckte Buch werden verlangt, was für ein umfangreiches Lehrbuch absolut in Ordnung ist wie ich finde.
Ich persönlich lerne selten mit Büchern, aber ich kenne viele die gerne einen konkret definierten Weg gehen und mit der Flutter Complete Reference könnte ich mir vorstellen, kann man dies gut umsetzen. Die Webseite zum Buch ist übrigens auch sehr schön gemacht. Es gibt diverse Beispiele, Ressourcen, eine kleine Vorschau und sogar ein Quiz. Vor allem letzteres finde ich sehr unterhaltsam und durchaus fordernd. Alle Amazon Links sind Affiliate- / Partner-Links die meinen Blog unterstützen.

Related Links

Google Developer Profiles Beta

Erstellt am event Uhr von account_circle Boehrsi in label Development
Google Developer Profiles Beta Bild

Solltet ihr in der Android oder Google Welt unterwegs sein, könnte euch vielleicht interessieren das Google scheinbar auch an Entwickler Profilen arbeitet. Also eine kleine Seite über euch selbst, wo ihr zeigen könnt was ihr entwickelt habt, welche Tools ihr gerne nutzt und welche Techniken relevant für euch sind.
Im Rahmen der Google.dev Plattform könnt ihr bereits Informationen zu verschiedenen Themen einholen oder mittels Codelabs und Tutorials neues lernen. Verbunden damit könnt ihr Badges erhalten und zeigen das ihr euch mit einer Technologie auskennt. Diese Informationen und einige weitere werden dann in eurem Profil hinterlegt. Das Ganze befindet sich derzeit in der Beta Phase. Bei Interesse folgt einfach den Related Links, um euer Profil zu erstellen oder etwas neues zu lernen.

Related Links

Flutter Build Probleme beheben - Failed to transform libs.jar

Erstellt am event Uhr von account_circle Boehrsi in label Development
Flutter Build Probleme beheben - Failed to transform libs.jar Bild

Derzeit stolpere ich hin und wieder, vor allem aber nach dem Ausführen von flutter clean, über den Fehler Failed to transform libs.jar. Dieser weist konkreter entweder auf debug\libs.jar oder profile\libs.jar hin.
Dieses Problem ist durchaus nervig, weil es jegliche Release Builds blockiert. Beheben lässt es sich zum Glück aber relativ einfach, denn je nach vorangegangener Fehlermeldung müsst ihr einfach nur den passenden Build ausführen, welcher die fehlenden Dateien generiert.

# Falls der Fehler debug\libs.jar referenziert 
flutter build apk --debug
# Falls der Fehler profile\libs.jar referenziert 
flutter build apk --profile

Es ist durchaus möglich das ihr beide Befehle nacheinander ausführen müsst, weil beide Dateien fehlen, achtet also genau auf die Fehlermeldung. Generell hoffe ich, dass das Flutter / Gradle / Android Studio Team die Problematik zeitnah in den Griff bekommt, denn solche Bugs klauen einem gerne die eine oder andere Entwicklungszeit.

Related Links
navigate_before Vorherige format_list_numbered  Seite 22 Nächste navigate_next