Beiträge

Wie wir bei der kreITiv ein stimmiges User Interface entwickeln

Wie wir bei kreITiv ein stimmiges User Interface entwickeln

Dem User Interface kommt als Schnittstelle zum Endanwender eine entscheidende Bedeutung für jede Form von Software zu. Sie bestimmt, ob eine Anwendung – so komplex oder simpel sie auch ist – überhaupt sinnvoll genutzt werden kann.

Fehler im Design können Motivation beim Nutzer und damit den Betreiber viel Geld kosten, wenn bspw. in einem Onlineshop kein Kauf ausgelöst oder in einem Webportal kein Account registriert werden kann. Aus diesem Grund beschäftigen wir uns also auch als Softwareentwickler immer schon frühzeitig mit dem Thema User Interface (UI).

1. Der Komponentenbaum für bessere Übersicht

Die Planung ist und bleibt ein wichtiger Bestandteil der Softwareentwicklung. Auch bei der Entwicklung mit komponenten-basierenden Frameworks, die bereits zahlreiche Vorarbeiten liefern, darf die Planung nicht zu knapp ausfallen. Ein stufenweises Herangehen hat sich inzwischen etabliert und erscheint aus mehreren Gründen sinnvoll.

Wichtig ist es, mit einem Prototypen zu beginnen. Dieser gibt das Design und eine gewisse Teilfunktionalität vor. Drei Arten des Prototypings in der Softwareentwicklung haben wir im Blog schon einmal behandelt. Basierend auf dem Prototyp, kann im nächsten Schritt ein Komponentenbaum aufgebaut werden. Dieser visualisiert den Aufbau der Anwendung und stellt die Zusammenhänge zwischen den Komponenten dar.

2. Ein Storybook zur interaktiven Entwicklung

Aufbauend auf dem Komponentenbaum kann ein sogenanntes Storybook entwickelt werden. Das Storybook dient zur Visualisierung der UI-Komponenten einer Software.

  • Für Entwickler bietet das Storybook die Möglichkeit, diese Komponenten interaktiv zu entwickeln sowie die einzelnen Komponenten intensiv zu testen.
  • Zusätzlich dient es als eine Art Dokumentation, welche es ermöglicht, Komponenten in anderen Projekten wiederzuverwenden. Dies hat den positiven Effekt, dass bei Folgeprojekten Entwicklungszeit eingespart werden kann.

Storybook zur interaktiven SoftwareentwicklungDurch das interaktive Entwickeln bekommt der Kunde auch einen Einblick in die Entstehung der Software und kann den Fortschritt stets mitverfolgen. Eine zeitnahe Feedback-Übermittlung bzw. Gegensteuerung bei ungeplanten oder ungewollten Entwicklungen ist damit jederzeit möglich. Missverständnisse, die oft erst gegen Ende von Projekten sichtbar werden, können deutlich reduziert werden. Das trägt zur Zufriedenheit aller Stakeholder des Entwicklungsprojektes bei.

Zwei Trends in Sachen User Interface

In der Entwicklercommunity ist die Unterstützung für das Thema Storybook in letzter Zeit stark gestiegen. Nicht nur große Firmen, wie Airbnb oder Xebia, setzen auf das Konzept, sondern auch einzelne Entwickler konzentrieren sich jetzt mit Vollzeit auf die Weiterentwicklung des Storybooks. Sehr lesenswerte Ansätze und Ausblicke liefert der Artikel “Storybook: The Next Chapter” auf medium.com

Ein weiterer positiver Trend in diesem Bereich ist die Verwendung von Komponenten-Bibliotheken, wie zum Beispiel Material UI von Google. Entwickler können sich dabei aus einem Repertoire von vorgefertigten Komponenten bedienen, welche bereits über ein gewisses Maß an Grundlogik verfügen. Das Design dieser Elemente ist an Android angelehnt und kann daher intuitiv verwendet werden. So müssen die Grundlagen nicht immer wieder neu erarbeitet, sondern können bei jedem Projekt verfeinert und optimiert werden.

Dieses modulare Vorgehen und die Best-Practice-Ansätze führen zu einer schlanken, einheitlichen und schnellen Entwicklung und werden in zunehmendem Maße auch in die alltägliche Arbeit der kreITiv-Softwareentwicklung integriert.

Webseiten und Web-Apps mit dem Laravel Framework

Laravel Framework – Die beste Option für Ihr Unternehmen

Webanwendungen erlauben einen universellen und flexiblen Zugang zu den unterschiedlichsten Dienstleistungen. Mit einer rasant steigenden Nutzung des Internets bieten auch zahlreiche Unternehmen ihre Waren, Dienstleistungen und Kenntnisse als Web-Content an. Zuverlässige, sichere und effiziente Applikationen sind somit der Schlüssel zum Erfolg für viele moderne Firmen.

Oft wird die Umsetzung solcher Web-Apps an Spezialisten und Agenturen abgegeben. Trotzdem ist es auch für den Auftraggeber wichtig, die unterschiedlichen Herangehensweisen bei der Entwicklung zu kennen, um zu verstehen, wie sich diese auf das eigene Unternehmen auswirken können.

7 Gründe, warum wir auf das Laravel Framework setzen

Für die Softwareentwicklung von kreITiv haben wir uns, wenn es um komplexe und langlebige Webanwendungen geht, für das PHP-Framework Laravel entschieden. Aus der Unternehmersicht, waren die folgenden Kriterien für diesen Schritt ausschlaggebend.

1

Ladezeit/Geschwindigkeit der Anwendung

Statistiken von Google aus dem Jahr 2016 belegen, dass 53% aller Nutzer eine Webseite verlassen, wenn deren Ladezeit mehr als drei Sekunden beträgt. Dies zeigt, dass die Geschwindigkeit von Web-Applikation höchste Priorität haben sollte.

Anders als bspw. beim mittlerweile sehr komplexen CMS WordPress, beinhaltet eine Laravel-Applikation ausschließlich die Funktionen, die auch wirklich gebraucht werden. Das Resultat ist ein nahezu perfekt auf den Verwendungszweck zugeschnittenes Produkt.

Bei großen Erweiterungen, welche die Ladegeschwindigkeit immer begrenzen, bietet Laravel diverse Optimierungsoptionen, bei denen unter anderem Caching eingesetzt wird.

2

Möglichkeiten zur späteren Weiterentwicklung

Laravel ist das beliebteste PHP Framework 2017 und kommt mit einer breiten Community von Programmierern und Unterstützern. Das bedeutet, dass es keine Probleme bei der späteren Überarbeitung eines Produktes gibt, da Laravel vollständig dokumentiert ist und zahllose Hilfestellungen zu finden sind. Projekte können durch die Skalierbarkeit Laravels stets wachsen und haben keine Limitierungen in diesem Bereich.

Außerdem beinhaltet Laravel ein Versionsmanagement für die Datenbankentwicklung, welches bei der späteren Expansion des Projektes hilfreich ist.

3

Client-Side Framework Unterstützung

Die komplizierten Funktionalitäten einer Web-App verstecken sich immer hinter dem Design. Daher ist es von hoher Wichtigkeit, dass die Benutzeroberfläche einfach zu bedienen ist und mit einer gewissen Eleganz beim Nutzer einen bleibenden Eindruck hinterlässt.

Laravel unterstützt eine Vielzahl an unterschiedlichen Client-Side Frameworks, welche für eine professionelle Entwicklung der Seitendarstellungen benötigt werden. Somit können sowohl statische als auch dynamische Seiten erstellt werden und es gibt keinerlei Limitationen, wenn es um die Interaktivität und Komplexität der Webanwendung geht.

4

Verwendung neuester Techniken bei der Entwicklung

PHP-Frameworks wie Laravel sind grundsätzlich ein Schritt in die Zukunft der Webentwicklung, da durch die Abstraktion keine einfachen Fehler und Sicherheitsprobleme auftauchen und die Programmierung effizienter und schneller geschieht.

Laravel ist ein ideales Grundgerüst für jegliche Webanwendungen, dank dem sich der Entwickler auf die eigentlichen Funktionalitäten der Applikation konzentrieren kann. Ein Beispiel dafür sind die Datenbankzugriffe, welche bei Laravel über vorgefertigte und abgesicherte Methoden laufen, was dazu führt, dass die Entwicklung schneller und die Verwendung sicherer ist.

5

Programmiererfreundliche Entwicklung

Durch den logischen Aufbau und die durchdachte Struktur der Laravel-Applikationen, ist das Handling für Produktentwickler um vieles angenehmer. Das führt dazu, dass viel weniger Logik- und Strukturfehler entstehen. Durch den besseren Überblick erkennen Programmierer schon bei der Entwicklung viel mehr Sicherheitsfehler und Bugs. Auch spätere Erweiterungen oder Änderungen der App können ohne Probleme durchgeführt werden, da es auch für einen projektfremden Entwickler einfach ist, die Struktur und Funktionalitäten zu verstehen und darauf basierend weiterzuentwickeln.

6

Überprüfte und instand gehaltene Sicherheitsoptionen

Laravel baut auf ein vollwertiges und häufig getestetes Authentifizierungssystem. Hinter dem Open Source Framework steht eine große Community. Dadurch werden Sicherheitslücken und allgemeine Fehler schnell erkannt und behoben.

Dieses Authentifizierungssystem umfasst das ganze Framework, wodurch die Absicherung von bestimmten Seiten und einzelnen Prozessen realisiert werden kann. Aufbauend darauf, wurden verschiedene Erweiterungen/Pakete entwickelt, mit denen man komplexere Systeme entwickeln kann. Genauso wie die nativen Laravel-Funktionen, sind diese Erweiterungen community-unterstützt und daher sehr verlässlich.

7

Erweiterte Möglichkeiten bei der Datenverarbeitung und -bereitstellung

Anders als bei vielen CMS und anderen Frameworks, liegt die Datenbankverwaltung ganz in den Händen der Programmierer. Es erlaubt den Zugriff auf alle Daten und ermöglicht eine Verwertung dieser Daten in einer großen Vielfalt.

Eloquent ist eine Laravel-Klasse, welche eine effizientere Datenverarbeitung erlaubt. Über automatisierte Verknüpfungen zwischen Datenbanktabellen und Laravel-Modellen wird der Datenzugriff erleichtert. Dadurch können jegliche Informationen verarbeitet werden und im Anschluss für Marketing, Prozessanalysen, und Kundenbetreuung sowie -service verwendet werden.

Moderne Webanwendungen von kreITiv

Egal, ob Webseite, Web-App oder cloud-gestützte lokale Anwendung, die Softwareentwicklung von kreITiv aus Dresden realisiert auch Ihr Projekt. Wir bauen auf moderne Webtechnologien und die Ablösung isolierter Systeme zugunsten flexibler und zukunftsweisender Onlinelösungen. Fragen Sie uns an.

Frameworks erleichtern heute das Arbeiten für Webentwickler

Frontend Development Frameworks in der Webentwicklung

Das World Wide Web wächst noch immer beständig und mit ihm auch der Umfang an Endgeräten, mit denen wir darauf zugreifen. Aus diesem Grund werden auch die Jobs der Webdesigner und Entwickler deutlich komplexer.

Schließlich sollen Webanwendungen auf möglichst vielen Geräteklassen mit den unterschiedlichsten Bildschirmauflösungen zum einen wie geplant funktionieren und zum anderen gut aussehen.

Warum überhaupt Frameworks in der Webentwicklung?

Vor einigen Jahren waren die Dinge deutlich einfacher. Man konnte davon ausgehen, dass die eigene Webseite stets über Desktop-Rechner mit einem Standardbrowser aufgerufen wurde. 960 Pixel wurden mehr oder weniger als eine gute Breite für eine Webseite betrachtet. Mit dem Boom von mobilen Endgeräten in den letzten sieben bis acht Jahren hat sich alles geändert. Wir haben die Einführung von Smartphones und Tablets aller Größen, eReadern, Browser in TV-Geräten und vieles andere erlebt. Die Vielfalt an Geräteklassen steigt nahezu täglich.

Bei der Arbeit mit unbekannten Darstellungsgrößen ist das “Responsive Design” eine der primären Strategien, die verwendet werden. Dieser Mechanismus stellt definierte Layouts bzw. Stylesheets auf der Grundlage der Größe der Browserfenster bereit.

Für Designer und Entwickler ist es wichtig zu verstehen, wie man mit dieser mobilen Welt umgehen kann. Es wurden bereits Technologien und Werkzeuge entwickelt, die das Leben der Web-Spezialisten vereinfachen sollen. Hier kommen die sogenannten Frontend Development Frameworks ins Spiel. Sie erlauben es, reaktionsfähige, standardkonforme Webseiten mit minimalem Aufwand zu erstellen und gleichzeitig alles einfach und konsistent zu halten.

Für Entwickler, welche die heutige Webentwicklung ernst nehmen, sind Frameworks keine Option, sondern ein Muss.

Es existiert eine Vielzahl dieser Frameworks; einige von ihnen heben sich aber von der Masse ab. Eines der mächtigsten und beliebtesten Frontend Frameworks ist Bootstrap.

Bootstrap, das beliebteste freie CSS-Framework

Bootstrap ist ein kostenloses Framework für die Gestaltung von Webseiten und Webanwendungen. Es wird Open Source unter einer Creative Commons Lizenz entwickelt und enthält HTML- und CSS-basierte Designvorlagen für Typografie, Formulare, Schaltflächen, Navigation und andere Schnittstellenkomponenten sowie optionale JavaScript-Erweiterungen. Im Gegensatz zu vielen Web-Frameworks handelt es sich nur um ein reines Frontend-Entwicklungstool.

Ursprünglich war Bootstrap nur für die interne Verwendung bei Twitter gedacht. Sein großer Erfolg ist auf folgende Punkte zurückzuführen:

  • Das responsive Grid-System,
  • eine nahezu komplette Bibliothek an User-Interface-Komponenten (inklusive JavaScript)
  • und eine hohe Usability.

Damit kommt das Framework auch in Sachen Effizienz und Zeitersparnis einer immer noch jungen, sich professionalisierenden Branche entgegen.

Auch wir in der kreITiv Webentwicklung setzen natürlich auf bewährte Technologien und halten ebenso die Augen für neue Trends der Softwareentwicklung offen. Kontaktieren Sie uns und realisieren Sie mit uns Ihr nächstes Webprojekt.

Frameworks in der Softwareentwicklung

Frameworks in der Softwareentwicklung

In der Softwareentwicklung ist ein Framework, auf Deutsch „Rahmenwerk“, zu verstehen als ein Gerüst, auf dem die Programmierung und Entwicklung innerhalb der Programmiersprache in einem Projekt basiert.

Was ist eigentlich ein Framework?

Frameworks bieten eine Sammlung von Funktionen, die oft einige Hürden in der Programmierung erleichtern. Dadurch können zum Beispiel die Kommunikation zwischen Client und Server oder Datenbankabfragen für Entwickler erleichtert werden und damit der nötige Programmieraufwand reduziert werden. Des Weiteren bieten Frameworks oft auch Sicherheiten gegen Cross-Site-Scripting oder SQL-Injections und weitere Vorteile, wie eine Model-View-Controller-Architektur oder Formularvalidierung.

Ein Framework ist nicht als fertiges Programm zu verstehen. Es bietet lediglich den Rahmen für die Entwicklung eines Programms, auf dem beliebig aufgebaut wird, das aber auch deutlich erweitert werden kann. Dieses Rahmenprinzip ist eine ideale Grundlage zur Teamarbeit. In vielen Unternehmen werden daher häufig entsprechende Kenntnisse und Erfahrungen für die Softwareentwicklung vorausgesetzt.

Frameworks in der Praxis

Im Alltag stellt sich nicht nur uns bei kreITiv immer wieder die Frage, welche Technologie wir in der Entwicklung von Softwareprojekten einsetzen sollten. Pauschal ist das allerdings schwer zu beantworten und auch Statistiken über die beliebtesten Frameworks (Umfrage zu den populärsten PHP-Frameworks 2015) helfen nicht wirklich weiter, sondern können im Gegenteil oft verwirren.

Natürlich sollte ein Framework zu den Bedürfnissen des Projekts passen und ein eher kleineres Vorhaben auch nicht überladen.

Wenn man sich einmal mit einem Framework vertraut gemacht hat und dieses versteht, dann ist es aus Gründen der Wirtschaftlichkeit oft ratsam, es auch in nachfolgenden Projekten zum Einsatz zu bringen. Die Auswahl sollte daher von vornherein immer zukunftsorientiert getroffen werden. Dabei sollte man darauf achten, dass eine gute Dokumentation bereitgestellt wird, regelmäßige Updates verfügbar sind und eine Community zum Erfahrungsaustausch zwischen den Entwicklern gegeben ist.

Frameworks werden heutzutage für die verschiedensten Programmiersprachen bereitgestellt und immer wieder kommen neue auf den Markt. Somit ergibt sich auch für die Softwareentwicklung ein ständiger Anpassungsprozess an neue Sprachen, Funktionen und Möglichkeiten.

Die Softwareentwicklung der kreITiv nutzt in der JavaScript-Entwicklung des Öfteren JQuery und AngularJS. In der PHP-Entwicklung setzen wir momentan auf das Laravel-Framework.