Goodbye Angular – Hello Flutter
First things first. Was ist eigentlich Angular?
Seit 2016 haben wir quasi all unsere Web-Software-Oberflächen mit dem Angular Framework entwickelt. Angular wurde 2016 unter anderem von Google ins Leben gerufen. Mit TypeScript als Programmiersprache ist es kompatibel für JavaScript und bot uns somit eine Möglichkeit, mit einem schlanken Entwicklungsprozess komplexe Anwendungen zu schaffen, die direkt im Browser ausgeführt werden können. Keine Installation notwendig und Updates können zentral installiert werden. Das beschreibt so natürlich generell den Einsatz von Web-Softwares im Unterschied zu lokal installierten Anwendungen. Neben der einfachen und modaleren Entwicklungsumgebungen bietet Angular eine direkte Unterstützung von Progressiv-Web-Apps – also Anwendungen, die auf Smartphone und Tablet ähnlich funktionieren wie native Apps, jedoch ohne Download oder Updates über einen App Store auskommen und auch auf Desktop ohne kontinuierliche Internetverbindung funktionieren.
Wenn Angular so gut ist, warum verabschieden wir uns dann davon?
Gute Frage! Angular hat uns wirklich lange gute Dienste geleistet, zum Beispiel haben wir damit auch unser eigenes CRM entwickelt. Das inwendo Mitarbeiter-/Kundenportal und damit das Herzstück unserer Agentur. Doch genau da kommt auch ein Grund des Abschieds zu Tage: Angular bietet zwar eine super Möglichkeit für Web-Software die im Browser läuft, aber dabei bleibt es dann auch. Spätestens seit der Homeoffice-Ära sind die Arbeitssituation nun auch so divers, dass wir neben einer Web-Version natürlich auch gerne eine App hätten. Das führt in der Theorie zu der Notwendigkeit, dass wir neben einer Code-Basis für Web, auch noch zwei weitere Codes für Android und iOS schreiben müssten – sehr umständlich.
Und wie kann Flutter da helfen?
Dazu sei erstmal gesagt, dass Flutter für uns gar nichts Neues ist. Wir entwickeln seit 2018 Apps für Android und iOS mit Flutter und zwar genau aus dem Grund, aus dem wir jetzt auch bei Web-Software darauf setzten. Wir benötigen nur eine einzige Code-Basis. Die Entwicklung selbst findet in der Basis-Programmiersprache Dart statt und zwar unabhängig vom späteren Betriebssystem oder der jeweiligen Bildschirmgröße. Der Code enthält dann alle Varianten für schmale Hochkant-Bildschirme von Smartphones bis zu Ultra-Breiten Desktop-Monitoren.
Nach der grundlegenden Entwicklung können wir dann einfach wählen, für welches System die Software ausgegeben werden soll. Angefangen mit Android und iOS unterstützt Flutter seit diesem Jahr auch Web-, MacOS- und Windows-Software. Und das jeweils mit den eigenen Design-Elementen der Systeme sowie auch komplett eigenen Elementen.
Das spart also Zeit?
Vor allem spart es Aufwand. Das Instandhalten von diversen Projekten in mehreren Frameworks ist sehr aufwändig und komplex. Mit Flutter vereinfachen wir Prozesse und somit auch die Stabilität, Aktualität und Sicherheit aller unserer Anwendungen. Zusätzlich können wir unsere Software genau dort zum Einsatz bringen, wo es für unsere Kunden am besten ist – egal ob App, Web- oder Desktop-Anwendung.
Im Allgemeinen optimiert diese Umstellung natürlich auch die Kosten für neue Projekte und auch der langfristigen Betreuung und Wartung eben dieser.