Technologien
Für die Umsetzung unserer und Ihrer Projekt verwenden wir natürlich nicht nur unseren Kopf, sondern auch eine Vielzahl von Technologien.
-
Sprachen und Frameworks für das Backend: Das Java-Ökosystem ist unser primäres Umfeld. Wir sind erfahren und gut in der objektorientierten Programmierung, aber aus Erfahrung überzeugter sind wir von funktionalen Ansätzen. Monaden kennen wir und sie sind unser täglicher Begleiter. Frameworks kommen und gehen. Ganz ohne geht es nicht, doch wir versuchen Abhängigkeiten unter Abwägung von Kosten und Nutzen auf ein Minimum zu reduzieren.
-
Kotlin: Kotlin ist keinesfalls ein Exot und es ist zu 100% kompatibel zur Java-Welt. Es erlaubt viel mehr funktionale Ansätze und so Manches ist weitaus eleganter, simpler und schneller zu lösen als in Java. Eine exotische Liebhaberei? Nein. Weniger Laufzeitfehler, schnellere Entwicklung und bessere Wartbarkeit sind Ihr Kostenvorteil.
- Clojure oder Haskell sind sicher weniger Mainstream, aber auch hier machen wir nicht halt, wenn es sinnvoll ist. Ganz getreu dem Motto „simple made easy“…
- Datenbankebene: Es ist vielleicht nicht so hip, aber für Vieles ist die relationale Datenbank immer noch der effizienteste Ansatz. Wir beherrschen diesen Klassiker und SQL. Mit dem etablierten Framework JOOQ schlagen wir die Brücke in die Kotlin/Java-Welt. Ja, ORMs/JPA können wir auch. Doch die Erfahrung hat uns gelehrt, dass ihre Komplexität und das Problempotential auf lange Sicht eher kosten als nutzen. Unsere bevorzugte relationale Datenbank ist PostgreSQL. Wo es sinnvoll ist, setzen wir natürlich auch alternative DB-Systeme, wie Mongo-DB, ein.
-
Und am Frontend? Wir entwickeln in erster Linie Webanwendungen. Ob Single-Page oder klassisch, kommt auf den Einzelfall und Kundenwunsch an. Das schöne ist: Es geht natürlich auch Hybrid.
- Für klassische Webanwendungen ist Wicket unser täglicher Begleiter. Die kurze und direkte Verbindung zwischen Backend- und Frontend-Code erspart die Implementierung von Webservice-Schichten zu Ihrem Kostenvorteil. Webservices und APIs bauen wir dann nur, wenn es nötig ist.
- Für SPA setzen wir primär Elm oder React ein.