Basierend auf unserer Zusammenarbeit mit der Inventarkreisel GmbH und eigentlich als theoretische Übung gedacht entsteht zurzeit ein modulares System zur Verwaltung von Inventaren.
In unserem Projekt für die Inventarkreisel GmbH kam die Idee auf, ein Programm zu schreiben, mit dem Unternehmen ihre Inventare verwalten können. Alle Unternehmen sind dazu verpflichtet, einen Überblick darüber zu haben, welche (insbesondere abschreibbaren) Vermögensgegenstände sie besitzen. Dazu können beispielsweise Computer, Büromöbel oder auch Maschinen gehören.
Die Idee dahinter ist, prinzipiell erstmal eine Basis zu schaffen, mit der sich so ein Inventar übersichtlich darstellen lässt. Man kann die Struktur beliebig gestalten, beispielsweise nach Standorten und einzelnen Räumen. In einer zweiten Stufe wird es dann darum gehen, die Veränderungen des Inventars auszugestalten:
Hier gibt es viele Ansatzpunkte und - das ist uns natürlich immer besonders wichtig - hier ergeben sich auch viele kleine Ansatzpunkte für reale Projekte für die Teilnehmer:innen unserer Umschulung zum / zur Fachinformatiker:in für Anwendungsentwicklung.
Zugleich soll dieses Projekt die Teilnehmer:innen lehren, wie man Code möglichst wiederverwendbar und neutral gestaltet. Die zugrundeliegende Datenstruktur lässt sich nämlich auf viele Bereiche anwenden. Beispielsweise auf eine Rezeptverwaltung für ein Restaurant. Dann geht es zwar nicht um Moebel und Computer, sondern um Schnitzel und Salz, aber doch wiederholen sich bestimmte Muster. Aus diesem Grund ist es unser persönliches Steckenpferd zu gewährleisten, dass unser Code klar trennt zwischen allgemein einsetzbaren Komponenten und den (tendenziell eher wenigen) Bereichen, in denen wir bewusst in Richtung Unternehmensinventar denken.
Auch hier bleiben wir Fans der plattformunabhängigen Kombination aus der Programmiersprache Dart und dem Framework Flutter. Für uns neu war Supabase als verwendetes Datenbank-Backend und Authentifizierungslösung. Als State Management Technologie kommt Bloc zum Einsatz und wir nutzen den Service Locator GetIt. Bei der Internationalisierung verzichten wir auf übliche Packages und schreiben alles selbst. Auch das ist natürlich in erster Linie eine Übung für unsere Teilnehmer:innen. Wir versuchen bei jedem Projekt, bestimmte Funktionalitäten bewusst selber zu entwickeln, selbst wenn es effizientere Alternativen gibt.
Dafür machen wir es uns bei den reinen Datenklassen sehr einfach und setzen hier voll auf das Freezed-Package zur Code Generation.
Wir werden die App-Suite kontinuierlich entwickeln, wobei unser Tempo nicht hoch ist, weil wir uns in erster Linie an unseren Teilnehmer:innen orientieren und deren Lernfortschritt steht im Vordergrund. Aber wir können uns gut vorstellen, die App dann auch irgendwann kostenlos anzubieten.