Boehrsi.de - Blog

Flutter 3.22 und Dart 3.4 veröffentlicht

Erstellt am event Uhr von account_circle Boehrsi in label Development
Flutter 3.22 und Dart 3.4 veröffentlicht Bild

Vor ungefähr einer Woche fand die Google I/O statt und in diesem Rahmen gab es auch neues im Bereich Flutter. Flutter 3.22 und Dart 3.4 sind seitdem verfügbar und bringen einige durchaus interessante Neuerungen.
Im Dart Bereich sind hier vor allem die Macros open_in_new zu erwähnen. Das Macro Feature ist aktuell noch eine Vorschau, kann aber im Rahmen des @JsonCodable() Macros open_in_new bereits konkret getestet werden. Generell können Macros als Realtime-Build-Runner zusammengefasst werden. Die Definition eines Macros gibt an was generiert werden soll, die Annotation löst diese Generierung für einen Code Teil aus und das Ganze passiert dann in Realtime. Dadurch sind prinzipiell Data Classes und alle möglichen anderen Konstrukte möglich. Initial will das Dart Team eine Reihe von Standard Macros definieren und das Feature stabilisieren. Allerdings können interessierte bereits jetzt in diesem Kontext selber Dinge ausprobieren. Abseits davon wurde der Dart Analyzer optimiert und diverse Fehler wurden behoben.

Related Links

Boehrsi.de - Neues Backend im Mai

Erstellt am event Uhr von account_circle Boehrsi in label Development
Boehrsi.de - Neues Backend im Mai Bild

Wie bereits erwähnt geht die Entwicklung meines neuen Backends für Boehrsi.de gut voran und ich plane den Rollout im Mai. Darin enthalten sind dann verschiedene Anpassungen, die sich größtenteils im Hintergrund abspielen. Sichtbar werden kleinere Änderungen bei den Kommentaren und der Suche sein, am relevantesten dürfte aber das neue Gewinnspielsystem sein. Es ist nun von den Kommentaren getrennt und benötigt nach initialer Teilnahme eine Bestätigung in einem zweiten Schritt. Dieser sollte für normale Nutzer keinen allzu großen Aufwand darstellen, dürfte aber die Script Kiddies etwas stören. Damit hoffe ich wieder verlässlich Gewinnspiele veranstalten zu können, ohne das einzelne Individuen die gesamte Veranstaltung für alle torpedieren. Sollte letzteres allerdings der Fall sein wird es vermutlich keine weiteren Umbaumaßnahmen und entsprechend Gewinnspiele mehr geben.

Open Source Projekte unterstützen

Erstellt am event Uhr von account_circle Boehrsi in label Development
Open Source Projekte unterstützen Bild

Open Source Software ist in vielen Bereichen meines IT-Lebens sehr relevant. Egal ob ich an meinem PC arbeite oder etwas auf dem Server konfiguriere, diverse Programme, Tools und ganze Betriebssysteme bewegen sich bei meiner täglichen Nutzung im Open Source Bereich.
Auch wenn Open Source nicht zwangsweise kostenlos bedeutet, sind die meisten Tools die ich in diesem Kontext verwende gratis. Selbige müssen aber natürlich trotzdem finanziert werden und aus diesem Grund versuche ich mindestens einmal im Jahr verschiedenen Open Source Projekte zu unterstützen. Dabei geht es nicht um gigantische Beträge und auf die Menge möchte ich auch gar nicht speziell eingehen, sondern nur auf den Fakt das ich etwas Spende. Denn vielleicht schaffe ich es damit den einen oder anderen ebenfalls mit der Idee anzustecken, sodass etwas mehr bei den Open Source Projekten eurer Wahl ankommt.
Ich werde dieses Jahr auf jeden Fall wie gewohnt Let’s Encrypt etwas Geld zukommen lassen. Doch auch Thunderbird möchte ich dieses Jahr unterstützen, denn ich nutze den Mail-Client nun schon sehr lange und bin durchaus glücklich nicht diverse Web-Interfaces abarbeiten zu müssen, sondern alles an einem Ort zu haben.
Die finale Spende geht dieses Jahr an Godot, die Game-Engine mit der ich zur Zeit mein erstes Spiel entwickle. Godot ist die Basis für mein Projekt und ermöglicht es mir meine Idee umzusetzen, ohne Kosten und mit einem meiner Meinung nach sehr fairem Einstiegsniveau.
Als Alternative zu monetären Mitteln ist es natürlich auch möglich sich aktiv an Open Source Projekten zu beteiligen, sofern es die eigenen Fähigkeiten zulassen. Dabei gibt es neben reinen Programmieraufgaben auch diverse andere Dinge bei denen man vielleicht unterstützen kann.

Related Links

Alle Godot Engine Nodes erklärt

Erstellt am event Uhr von account_circle Boehrsi in label Development
Alle Godot Engine Nodes erklärt Bild

Für die Entwicklung meines Spiels nutze ich wie bereits mehrfach erwähnt die Engine Godot. Godot kann für 2D und 3D Spiele genutzt werden und entsprechend gibt es diverse Komponenten, welche man nutzen kann. In Godot spricht man meist von Nodes und selbige sind meist sehr einfach und logisch nutzbar. Doch um eine Node nutzen zu können, muss man natürlich wissen das selbige existiert.
Bevor man jetzt langwierig die gesamte Godot Dokumentation open_in_new ließt, wobei mitunter sicherlich nicht alles hängen bleibt, kann man auch ein extrem kurzweiliges, aber dennoch sehr informatives Youtube Video konsumieren. Das Video von Lukky open_in_new schneidet alle 219 Godot Nodes (Stand Ende 2023) an und gibt euch so, in etwas mehr als einer halben Stunde, einen sehr guten Überblick. Mit selbigem kann man sich dann weiter informieren. Ich fand das Video sehr interessant und habe einige Nodes kennengelernt die mir zuvor nicht bekannt waren. Falls ihr also auch mit Godot arbeitet oder aber dies plant, schaut euch das Video doch mal an.
Als kleine Randnotiz kann ich übrigens sagen, dass auch die weiteren Videos von Lukky sehr interessant und durchaus einen Blick wert sind.

Related Links

Boehrsi.de Backend erhält Dart Rewrite

Erstellt am event Uhr von account_circle Boehrsi in label Development
Boehrsi.de Backend erhält Dart Rewrite Bild

In den letzten Monaten habe ich neben der Weiterentwicklung meines Spiels, auch eine Neuentwicklung meines Blog-Backends in Dart vorangetrieben. Grund dafür war vor allem das Interesse an den neuen serverseitigen Möglichkeiten von Dart open_in_new. Denn neben Clients in Flutter oder Dart Konsolen Tools, gibt es mittlerweile diverse Ansätze um Dart auf Servern nutzen zu können. Für mich ist dies vor allem spannend, da Dart Code zu einer nativen Binary File wird und keine Runtime braucht, im Vergleich zu z.B. Java oder Kotlin. Letzteres ist für meine aktuelle Lösung nötig und bedeutet das Java und alles was dazugehört auch dem Server aktiv sein muss. Auch wenn dies generell kein Problem ist, so bin ich ein Freund von Programmen oder Tools die als einzelne Binary File ausgeliefert und genutzt werden können, ohne weitere Konfiguration auf dem Host-System. Dadurch werden Deploy und Update Prozesse einfacher und in meinem speziellen Fall hoffe ich die RAM Nutzung optimieren zu können.

Godot Editor mit Custom Themes

Erstellt am event Uhr von account_circle Boehrsi in label Development
Godot Editor mit Custom Themes Bild

Da ich aktuell wieder etwas mehr Zeit finde, um an Project Space weiterzuarbeiten, nutze ich natürlich auch den Godot Editor wesentlich mehr. Verbunden mit dem Update auf Godot 4 habe ich auch im Kontext von Themes und anderen Verbesserungen für den Editor die Augen offengehalten und bin auch ein schlichtes, aber sehr praktisches Theme gestoßen.

Related Links

Flutter 3.19 veröffentlicht

Erstellt am event Uhr von account_circle Boehrsi in label Development
Flutter 3.19 veröffentlicht Bild

Bereits vor ca. zehn Tagen erschien eine frische stabile Version von Flutter. Flutter 3.19 bringt wie gewohnt diverse Verbesserungen, aber auch komplett neues mit sich. Auch Flutter möchte den AI Trend natürlich nicht verpassen und somit gibt es mit dem Gemini Google AI Dart SDK (Beta) open_in_new nun eine direkte Schnittstelle zu Googles neuem LLM AI Tool.
Abseits dieser Neuerung wurde das Scrolling verbessert und im Bereich der Animationen gibt es neue Möglichkeiten, um mit geringem Aufwand Animation von z.B. Menüs zu ändern. Eine Neuerung bei den SemanticsProperties open_in_new könnte unter anderem beim automatisierten Testing hilfreich sein, denn nun kann man von Flutter aus die Android Property resource-id setzen.
Während iOS bereits die neue Rendering Engine Impeller open_in_new nutzt, ist sie für Android aktuell noch in der Beta Phase. Hier geht es allerdings voran und ein Großteil der Android Geräte soll bereits mit Impeller funktionieren. Einige wenige Features fehlen noch und aktuell ist man auf der Suche nach weiterem Feedback, sodass Impeller für Android vielleicht bald schon als finale Version zur Verfügung steht. Generell soll Impeller eine wesentlich bessere Rendering Performance bieten, bei geringerer Last und verbesserten Debugging Möglichkeiten.

Related Links

Migration von WillPopScope zu PopScope

Erstellt am event Uhr von account_circle Boehrsi in label Development
Migration von WillPopScope zu PopScope Bild

Deprecation ist etwas natürliches in der Softwareentwicklung. Code Teile werden als veraltet markiert, Alternativen werden geschaffen und die Entwickler wechseln auf die neuen Klassen und Methoden. Leider kommt es immer wieder vor, dass die angebotene Alternative anders funktioniert als erwartet oder gewünscht und es entsprechend zu Problemen kommt.
Selbiges Problem habe ich mit der Migration von WillPopScope open_in_new zu PopScope open_in_new. Beide sind dafür zuständig in einer Flutter App die normale Behandlung des Back-Buttons zu verändern. Ich nutze dies z.B. in meiner Tessa App. Mit WillPopScope gab es keine Probleme, aber aufgrund einer Änderung im Android System mussten die Flutter Entwickler hier etwas neues schaffen, um auch die Funktionen in neueren Android Version zu unterstützen.
Während WillPopScope für meine verschiedenen Fälle immer funktionierte, nutzt PopScope einen anderen Ansatz und zwang mich zum umdenken. Dabei geht es nicht nur mir so, wie der GitHub Issue open_in_new zum Thema zeigt.

Devlog #6 - Project Space - Update auf Godot 4 geplant

Erstellt am event Uhr von account_circle Boehrsi in label Development
Devlog #6 - Project Space - Update auf Godot 4 geplant Bild

Es ist schon fast ein bisschen traurig wie lange das letzte Update zu Project Space her ist. Doch leider wissen wir ja alle wie es ist, denn Zeit ist ein sehr begrenztes Gut und vor allem im letzten Quartal 2023 war ich mit meinem Umzug und diversen weiteren Dingen komplett ausgelastet. Auch wenn der Großteil in diesem Bereich abgeschlossen ist, so gibt es weiterhin diverse Aufgaben zu erledigen, sodass ich definitiv generell etwas weniger Zeit haben werde.
Es bleibt allerdings dabei, Project Space hat von meinen Softwareprojekten die höchste Priorität und wird entsprechend weiterentwickelt. Abseits davon habe ich noch einige Inhalte die ich noch nicht in Form von Beiträgen verarbeitet habe, ihr könnt euch also auf weiteren Content freuen. Denn zuletzt habe ich gute Fortschritte bei diversen Kernsystemen, dem Content und verschiedenen kleinere Teilbereichen gemacht.

Related Links

Patchday - Frische Library Updates

Erstellt am event Uhr von account_circle Boehrsi in label Development
Patchday - Frische Library Updates Bild

Neben meinem Blog waren auch meine Libraries in den letzten Monaten auf Eis gelegt. Dies habe ich letzten Sonntag behoben, mit neuen Updates für alle meine aktiven Libraries. Konkret wurden Device Marketing Names – Dart Version 0.8.0, Device Marketing Names – Kotlin Version 0.5.0 und OnUpgrade Version 1.1.9 veröffentlicht.
Weitere Informationen zu den jeweiligen Updates findet ihr im unteren Teil des Beitrags.

Related Links
navigate_before Vorherige format_list_numbered  Seite 2 Nächste navigate_next