Fachbegriffe rund um Softwareentwicklung und IT verständlich in unserem hauseigenen Glossar erklärt.
Ant Design ist ein Open Source Code für UI Design Sprachen auf Unternehmensebene und eine React UI Bibliothek. Es befindet sich Stand Juli 2021 in Version 4.16.7 und wird konstant weiterentwickelt. Das Designsystem beinhaltet viele Komponenten, die auch separat von Ant Design verwendet werden können.
Die Komponenten umfassen Generell, Layout, Navigation, Dateneingabe, Datenanzeige, Feedback und andere.
Wir bei twigbit können Ihnen bei verschiedenen Design Themen. Wenn Sie also Unterstützung benötigen, helfen wir Ihnen gerne.
Zurück zum Glossar.
Windows ist das erstmals 1985 veröffentlichte Betriebssystem von Microsoft. Das ursprünglich als grafische Erweiterung von MS-DOS (Microsoft-Disk-Operating-System) gedachte Betriebssystem ist heute das weltweit verbreitetste Betriebssystem mit einem Marktanteil von mehr als 90%. Die neueste WIndows Version ist das im Juli 2015 veröffentlichte Windows 10. Im Juni 2021 wurde der Nachfolger Windows 11 angekündigt.
Eine große Konkurrenz zu Windows sind macOS von apple und auch Linux Betriebssysteme wie Ubuntu oder Mint.
Zurück zum Glossar.
macOS ist das Computer Betriebssystem von apple, das erstmals 2001 erschien. Das System wurde speziell für apple's Mac Geräte entwickelt. macOS ist das am zweithäufigsten genutzte Betriebssystem nach Microsoft Windows.
Zurück zum Glossar.
Linux ist ein kostenloses, auf Unix basierendes Betriebssystem, das 1991 zum ersten Mal öffentlich zur Verfügung gestellt wurde. Der Quellcode von Linux ist frei zugänglich, was es zu einem sogenannten freien Betriebssystem macht. Linux existiert in verschiedenen Varianten, wie zum Beispiel Ubuntu oder Mint.
Zurück zum Glossar.
Webdesign bezeichnet die Gestaltung einer Website, wobei neben dem grafischen Design noch viele andere Komponenten dazukommen. Auch die User Experience, das User Interface, die Suchmaschinenoptimierung und Content Erstellung sind Teile des Webdesigns, also der kreative Teil. Am Anfang entwickelt ein Webdesigner einen Mockup, womit man sehen kann, wie die zukünftige Website aussehen wird und um zu sehen, ob die Idee gut umgesetzt werden kann. Auf Wunsch des Kunden können hier auch schon Anpassungen erfolgen.
Zurück zum Glossar.
Ein Betriebssystem stellt die Benutzeroberfläche für alle Programme bereit, die am Computer oder Mobilgerät ausgeführt werden. Es stellt die Schnittstelle zwischen Hardware und Software dar. Beispiele für Betriebssysteme sind Windows von Microsoft, macOS von apple und Linux. Auch iOS und Android sind die Betriebssysteme, mit denen mobile Geräte laufen.
Zurück zum Glossar.
Figma ist ein Webtool, mit dem mehrere Personen gemeinsam Benutzeroberflächen entwickeln können. Es begann gleich nach der Markteinführung an Popularität zu gewinnen, da Figma alle gängigen Betriebssysteme unterstützte. Mit der Zeit wurde Figma aufgrund der stabilen Entwicklung und des Funktionszuwachses zum absoluten Favoriten in der Designergemeinschaft.
Funktionen wie Zusammenarbeit und Echtzeit-Datenspeicherung sparen bei der Verwendung von Figma eine Menge Zeit. Da jeder Mitarbeiter den gleichen Zugang zur Arbeit hat, können alle immer auf der gleichen Seite stehen. So können ein Designer, ein Entwickler und ein Produktmanager zur gleichen Zeit an derselben Aufgabe arbeiten.
Bei Twigbit versuchen wir, das Maximum aus Figma herauszuholen. Die Arbeit mit Komponenten ist die Grundlage für schnelle und qualitativ hochwertige Design-Iterationen. Dank der Komponenten können wir sich wiederholende Elemente des Bildschirms mit einem einzigen Klick ändern. Diese Funktion ist besonders nützlich bei der Arbeit an großen Projekten mit Hunderten von Bildschirme und Tausenden von gleichen Oberflächenelementen.
Ein weiteres wichtiges Merkmal von Figma ist die Möglichkeit, mit Vektordateien zu arbeiten. Anstatt zusätzliche Anwendungen wie Adobe Illustrator zu verwenden, können Sie mit Figma Vektorillustrationen und -objekte erstellen und bearbeiten. Das spart nicht nur Zeit, sondern ermöglicht es auch Programmierern, kleine kreative Anpassungen schnell und erfolgreich durchzuführen.
Doch es gibt noch mehr, was Figma zu etwas Besonderem macht - externe Plugins. Plugins sind unabhängige Anwendungen, die zusätzliche Funktionen zum Tool hinzufügen. Sie werden von Benutzern erstellt und im Figma-Store öffentlich zugänglich gemacht. Ihre Anzahl geht in die Hunderte und sie machen Figma zu einer außerordentlich vielfältigen Designanwendung - Animation, Fotoretusche, Export von Dateien verschiedener Formate, Kommunikation und Prototyping - die Anwendungsszenarien von Figma sind unzählig.
Aus all den oben genannten Gründen ist Figma für Designer auf der ganzen Welt das Werkzeug Nummer eins. Freiberufler und Einzelunternehmer, Startups und große Unternehmen wie Github und Airbnb nutzen es täglich.
Webflow ist ein Tool mit dem sich Webseiten bauen lassen. Dabei ist es eine Mischung aus Homepage-Baukasten und Content Management System (CMS). Auf einer Photoshop Ähnlichen Benutzerfläche lässt sich per Drag and Drop die Seite erstellen, während Webflow die Gestaltung im Backend in Code umwandelt. Da Webflow komplexer ist als andere Website Baukästen, ist ein grundlegendes Verständnis für Webdesign vorausgesetzt.
Wir bei twigbit nutzen Webflow beim Design unserer Website und auch bei der Arbeit mit Kunden/Kundinnen. Wenn Sie also Unterstützung benötigen, beraten wir Sie gerne.
Zurück zum Glossar.
Firebase ist eine Entwicklungsplattform der Google Cloud Plattform zur Entwicklung und zum Hosten von Mobile- und Web Apps. Neben Android und iOS werden auch Web Apps, Java, C++ und Unity unterstützt. Durch die Nutzung von Firebase entfallen viele Arbeiten im Backend, da es in der Google Cloud Plattform gehostet wird und so ohne Aufwand skaliert werden kann. Firebase ist deshalb eine sogenannte "Backend as a Service" Plattform.
Zurück zum Glossar.
Node.js ist eine eventbasierte Laufzeitumgebung für die Entwicklung von u.a. serverseitigen Skripten, Netzwerktools und Web Apps. Das hauptsächlich für die Webserver-Programmierung eingesetzte Framework basiert auf Google Chromes V8-Engine zum Ausführen von JavaScript Codes. V8 kompiliert JavaScript direkt in nativen Maschinencode, sogenannte Just-In-Time-Kompilierung. Indem es JavaScript auch für die serverseitige Programmierung bereitstellt, will Node.js die Webentwicklung vereinheitlichen.
Zurück zum Glossar.
Next.js ist ein Framework für serverseitig gerenderte React Anwendungen von Vercel, welches u.a. von Netflix, Hulu und Tiktok genutzt wird. Das Open Source Framework wird für die Erstellung von Webseiten und Webanwendungen verwendet. Dabei hilft es dem Entwickler, Static Site Generation (SSG) und Server Site Rendering (SSR) einer Website zu erstellen.
Eine der Kernkompetenzen von Next.js ist, dass es Website Modelle mit mehreren Seiten unterstützt. Außerdem ist die Entwicklung mit Next.js Low Code und Zero Konfiguration, um die Arbeit für Frontend Entwickler zu vereinfachen.
Zurück zum Glossar.
Gatsby ist ein kostenloses Open Source Static Site Generator, was auf React basiert und bei der Entwicklung von statischen Websites und Apps hilft. Darüber hinaus wird Gatsby von GraphQL unterstützt.
Ein Static Site Generator benötigt keine Datenbank, da er alle bereits im Vorfeld statisch gerenderten Inhalte an einfache Webserver ausliefert. Um einige der Nachteile von Static Site Generatoren zu minimieren, kombiniert Gatsby diese Idee mit modernen Techniken aus der Webentwicklung.
Zurück zum Glossar.
Android ist das mobile Betriebssystem, das von Google und der Open Handset Alliance (OHA) entwickelt wurde. Die OHA ist eine Vereinigung von über 30 Hardware-, Software- und Telekommunikations-Unternehmen, wie z.B. HTC, Samsung und Intel.
Im Gegensatz zu iOS von Apple ist Android ein offenes System. Das bedeutet, dass Android von Geräteherstellern genutzt werden kann ohne dass Lizenzgebühren an Google gezahlt werden müssen. Das führt dazu, dass Android auf über 80% aller neuen Mobilgeräte bereits vorinstalliert ist. Darunter sind die Geräte von Samsung, Sony, HTC, Motorola, LG und noch viele andere.
Zurück zum Glossar.
iOS ist das mobile Betriebssystem von Apple, welches anders als Android kein offenes Betriebssystem ist. Das bedeutet, dass iOS nur auf Apple Geräten läuft. Das Computer Betriebssystem Mac OS X gilt als Basis für iOS.
Das Betriebssystem wurde erstmals im Januar 2007 für das iPhone vorgestellt. Es wurde damals als "macOS, das auf dem iPhone läuft" vorgestellt. Bis 2010 wurde das Betriebssystem noch "iPhone OS" genannt, aber da es seit dem nicht mehr nur auf dem iPhone installiert war, musste apple den Namen modifizieren.
Zurück zum Glossar.
Kotlin ist eine statisch typisierte High-Level-Programmiersprache die besonders bei Android Entwicklern beliebt ist. Die Version 1.0 der Sprache wurde im Februar 2016 veröffentlicht, wobei sie zum ersten Mal bereits 2011 erschien. Seit 2017 ist Kotlin eine offizielle, von Android unterstützte Programmiersprache. Das erreichte die relativ junge Sprache durch ihren schlanken Charakter und weil sie nicht so oft NullPointerExceptions produziert.
In Form von Bytecode lässt sich die Sprache für die Java Virtual Machine übersetzen. Eine hohe Kompilier-Geschwindigkeit und möglichst wenig Code waren bei der Entwicklung die wichtigsten Ziele. Damit Kotlin auch für die Webentwicklung genutzt werden kann, wird die Sprache in JavaScript übersetzt. Dabei kann die Sprache sowohl für serverseitigen Anwendungen als auch für weitere Plattformen wie Windows, macOS oder sogar iOS verwendet werden. Für die weiteren Plattformen wird das, sich noch in der Entwicklung befindende, Kotlin/Native verwendet.
Zurück zum Glossar.
Tailwind ist ein Utility-First-CSS-Framework, das seinen Nutzern Utility Klassen bereitstellt. Durch die Verwendung dieser Klassen lassen sich schnell und einfach eigene, einzigartige Designs erstellen. Für die Gestaltung von Webseiten enthält Tailwind die Grundlagen, wie z.B. Farben, Größen, Ränder, Positionierungen usw. Komponenten müssen von Nutzern selbst erstellt werden. Damit unterscheidet es sich von anderen CSS Frameworks wie z.B. Bootstrap und Bulma, die vorgefertigte UI Komponenten anbieten. Komponenten lassen sich in Tailwind inline stylen, weshalb es nicht mehr nötig ist, eine separate CSS Datei anzulegen.
Tailwind bringt einige Vorteile mit sich, so ist es zum Beispiel super anpassbar. Es gibt eine Standardkonfiguration, die sich einfach mit einer tailwind.config.js Datei überschreiben lässt. Mit dieser Datei lässt sich alles ganz einfach anpassen. Mit der Konfigurationsdatei gibt es außerdem noch ein Entwurfssystem, mit dem sich alle wichtigen Werte im Voraus konfigurieren lassen.
Durch die von Tailwind bereitgestellten Hilfsklassen spart man sich das Benennen von Klassen, was die Arbeit erleichtert. Außerdem wird die Arbeit dadurch erleichtert, dass das Framework fast alles, was benötigt wird, von sich aus mitbringt. Diese Konsistenz sorgt dafür, dass man sich ohne große Probleme in neue Tailwind-Projekte einarbeiten kann.
Wir bei twigbit helfen Ihnen bei der Entwicklung von Software und Apps. Wenn Sie also Unterstützung benötigen, helfen wir gerne.
Zurück zum Glossar.
Redux ist eine JavaScript Bibliothek für die Frontend Entwicklung zur Verwaltung von Zustandsinformationen in einer Web App. Über die offizielle Seite wird Redux als "vorhersehbarer Statuscontainer für JavaScript Anwendungen" beschrieben.
Redux hilft bei der Strukturierung komplexer GUIs, indem es den Zustand einer gesamten Anwendung in einem einzigen unveränderlichen Zustandsbaum (Single Immutable State Tree) verwaltet. Zusammen mit den Bibliotheken React oder Angular wird Redux häufig für die Erstellung von GUIs verwendet.
In der Entwicklung mit Redux gibt es einige Kernkonzepte:
Zurück zum Glossar.
Die Google Cloud Platform (GCP) bietet über 90 verschiedene IT-Services und ist einer der größten Cloud Provider der Welt. Zu den Services, die die GCP bietet gehören unter anderem Hosting Services für Computing, Storage und Anwendungsentwicklung. Google selbst nutzt die GCP für Endbenutzerprodukte wie Google Search und Youtube.
Die GCP bietet eine Reihe von Produkten, wie zum Beispiel:
Zurück zum Glossar.
Amazon Web Services (AWS) ist eine Cloud Computing Plattform von Amazon und ist die weltweit umfassendste und am häufigsten genutzte Cloud Plattform. AWS wird von großen Kunden, wie zum Beispiel Netflix, Reddit oder Dropbox genutzt, um unzählige Daten zu speichern.
Zur Sicherung der Stabilität des Systems und um die Auswirkungen von Ausfallzeiten zu minimieren, gliedert sich AWS in Regionen mit verschiedenen Rechenzentren, die als zentrale Knotenpunkte fungieren. Diese gibt es in Nordamerika (Region USA: Ost und West), Südamerika (Region Sao Paulo, Brasilien), Europa/Naher Osten/Afrika (Region EU: Irland, Frankfurt) und Asien-Pazifik (Region Asien-Pazifik und China)
AWS bietet eine ganze Reihe an Diensten, wie zum Beispiel:
Zurück zum Glossar.
Kubernetes (auch "K8s" oder "K-Eights") ist eine Open-Source-Software zum Bereitstellen, Verwalten und Skalieren von Containern und unterstützt Container-Engines wie Docker. Dabei werden viele damit zusammenhängende manuelle Prozesse eliminiert. Es erleichtert sowohl die deklarative Konfiguration als auch die Automatisierung und wird verwendet, um containerbasierte Apps schneller zu erstellen, auszuliefern und zu skalieren.
Ein Hauptvorteil von Kubernetes ist, dass sich Services in Containern automatisch intelligent auf den kompletten Kubernetes Cluster verteilen lassen und so die vorhandenen Ressourcen nutzen können.
Darüber hinaus hat Kubernetes noch einige weitere Funktionen. Es kann zum Beispiel als eine Microservices Plattform oder eine portable Cloud Plattform gesehen werden.
Zurück zum Glossar.
Docker ermöglicht die Container Virtualisierung von Anwendungen, indem diese samt ihrer Abhängigkeiten in Images abgelegt werden, welche sich zwischen Systemen bewegen lassen. In einem Docker Container kann die verpackte Anwendung mittels einer speziellen Engine ausgeführt werden.
Das Ziel der Container ist die Fähigkeit, mehrere Prozesse und Apps getrennt voneinander betreiben zu können. Das ermöglicht die bessere Nutzung der Infrastruktur und die Erhaltung der Sicherheit, welche eine Folge der Arbeit mit getrennten Systemen ist.
Der Fokus von Docker Containern im Vergleich mit einer virtuellen Maschine ist die Isolierung von laufenden Anwendungen, wobei Docker jedem Container gewisse Betriebssystem- und Hardware Ressourcen zuweist. Das bedeutet, dass ein Docker Container nur tatsächlich benötigte Informationen enthält.
Zurück zum Glossar.
Vercel ist eine Software zur Vereinfachung des Deployment Prozesses in der Webentwicklung. Es ist außerdem ein Werkzeug für die Erstellung besserer User Interfaces. Vercel wird unter anderem von Unternehmen wie AirBnb, Uber, GitHub, Nike und Ticketmaster genutzt.
Vercel ermöglicht Frontend Entwicklern die Erstellung von leistungsstarken Websites und Anwendungen, die sofort einsatzbereit sind und automatisch skalieren, ohne jegliche Konfiguration.
Zurück zum Glossar.
Webbrowser sind Programme, die zur Darstellung von Webseiten im Internet dienen. Der erste Webbrowser mit dem Namen "WorldWideWeb" entstand im Jahre 1989 und wurde für wissenschaftliche Zwecke entwickelt.
Neben den normalen HTML Seiten können Webbrowser auch andere Dokumente, Bilder oder PDFs öffnen und anzeigen. Webbrowser sind essenziell für die Verwendung von Web Apps.
Zu den beliebtesten und bekanntesten Webbrowsern gehören Google Chrome, Mozilla Firefox, Microsoft Edge, Safari und Opera. Es gibt, vor allem bei Chrome und Firefox, ein großes Angebot an Add-Ons mit verschiedenen Funktionen, die das Surfen erleichtern sollen. Es ist außerdem möglich, seinen Browser mit verschiedenen Designs zu personalisieren.
Zurück zum Glossar.
PHP (rekursives Akronym für PHP: Hypertext Preprocessor) ist eine, speziell für die Webentwicklung geeignete, Open Source Skriptsprache, die in HTML eingebettet werden kann. PHP kann genutzt werden um Webseiten dynamisch zu gestalten und wird serverseitig verarbeitet.
PHP wurde ausschließlich für die Webserver Programmierung entwickelt und enthält daher nur die dafür notwendigen Bestandteile.
Zurück zum Glossar.
CSS (Cascading Style Sheets) ist eine Gestaltung- und Formatierungssprache mit der Webseiten gestaltet werden und ist neben HTML der wichtigste Standard im Webdesign.
Das CSS wird entweder in separaten CSS Dokumenten eingebunden oder direkt im HTML Dokumenten angewendet. Ersteres bietet dabei den Vorteil, dass Inhalt und Darstellung getrennt sind und somit der Quellcode übersichtlich bleibt.
Zurück zum Glossar.
JavaScript ist eine von Netscape entwickelte Skriptsprache für die Darstellung und Ausführung von dynamischen HTML in Webbrowsern. In der Regel wird JavaScript in der Webentwicklung verwendet, wobei die Verarbeitung meist clientseitig direkt durch den Webbrowser. Heutzutage ist JavaScript in allen gängigen Webbrowsern implementiert.
Dynamische Funktionen, wie zum Beispiel das Öffnen und Anzeigen von Dialogfenstern oder die Öffnung einer verlinkten Seite in einem neuen Pop-up-Fenster, lassen sich durch JavaScript realisieren.
Zurück zum Glossar.
HTML (Hypertext Markup Language) ist eine textbasierte Auszeichnungssprache mit der sich Inhalte einer Website mit sogenannten "Tags" strukturieren lassen.
Der Text einer Website wird dabei in einer HTML Datei geschrieben, strukturiert und formatiert. Eine simple Website besteht dabei in der Regel aus mehren, miteinander verknüpften, HTML Dokumenten. Content Management Systeme wie WordPress oder Typo3 werden heutzutage genutzt damit HTML Dateien nicht mehr selber geschrieben werden müssen.
Zurück zum Glossar.
Frontend bezeichnet die Teile einer Software, die vom Kunden gesehen werden. Frontendentwickler konzentrieren sich also auf die clientseitige Programmierung und die Umsetzung des Layouts der App, Software oder Website. Generell werden dazu die Beschreibungssprache HTML, die Stylesheet-Sprache CSS und die Programmiersprache JavaScript verwendet.
Frontend Entwickler arbeiten als Schnittstelle zwischen Backend und Webdesign. Nach bestimmten Vorgaben setzen sie das Design von Anwendungen technisch um. In manchen Unternehmen übernehmen Frontend Entwickler auch die Aufgaben von Webdesignern und je nach Größe auch die der Backend Entwickler.
Zurück zum Glossar.
Die App Entwicklung erfolgt in mehreren Phasen und fasst alles von der Planung, über die Konzeption und Programmierung bis zur Wartung von Mobile Apps und anderen Anwendungen zusammen.
Als erstes braucht es eine Idee. Diese kann auf unterschiedlichen Arten entstehen: Man kann eine spontane Idee haben oder sie entsteht, wie in den meisten Fällen, durch ein Brainstorming. Es sollen verschiedene Fragen geklärt werden, wie z.B.: Welche Inhalte soll die App enthalten? Wer ist die Zielgruppe? Wozu soll die App genutzt werden?
Außerdem muss geklärt werden, um was für eine Art App es sich handelt. Dabei gibt es drei Arten:
Als nächstes gilt es die User Experience und das User Interface zu konzeptionieren. Hier stellt sich vor allem die Frage wie die App aufgebaut sein soll. Darauf folgt das optische Design der App.
Am Ende steht die Programmierung. Je nach Art der App wird diese dann mit den passenden Entwicklungstools entwickelt.
Zurück zum Glossar.
Frameworks sind Programmiergerüste, einen Rahmen, mit denen die Entwicklung von Software, Websites, Mobile Apps oder Ähnliche erleichtert wird. Ein Framework ist im Prinzip eine Vorprogrammierung, bei der verschiedene Funktionen und Elemente bereits enthalten sind. Das vereinfacht die Verwendung von wiederkehrenden Aufgaben und spart viel Zeit.
Die Arbeitserleichterung, die Frameworks mit sich bringen, ist einer ihrer größten Vorteile. Außerdem lassen sie sich einfach anpassen und sparen dadurch einiges an Zeit. Darüber hinaus lassen sich durch ihre Struktur Syntaxfehler vermeiden.
Zurück zum Glossar.
Die Kanban Methode, welche besonders gut für Routinearbeiten ist, nutzt zur Visualisierung des Workflows ein sogenanntes Kanban Board, welches in drei grundlegende Abschnitte mit den Titeln Angefordert, In Bearbeitung und Erledigt unterteilt wird. Die Anzahl der Unterteilungen kann je nach Bedarf angepasst werden. Der Arbeitsprozess kann so noch detaillierter dargestellt werden.
Der zweite Schwerpunkt der Kanban Methode ist die Limitierung der laufenden Arbeit. Dabei wird die Menge der parallelen Aufgaben reduziert. Die Etablierung eines reibungslosen Arbeitsflusses ist die Grundidee bei der Einführung eines Kanban Systems.
Zurück zum Glossar.
Scrum ist ein Vorgehensmodell der agilen Softwareentwicklung, wobei der Hauptfokus auf die Selbstorganisation und Selbstmotivation liegt. Es ist ein Framework zur Entwicklung, Lieferung und Wartung komplexer Produkte. Die Software wird dabei in Sprints, Ereignisse mit einer Länge von einem Monat oder kürzer, entwickelt. Hierbei ist eine einfachere Reaktion auf Änderungen möglich.
Als erstes erstellt ein Product Owner einen Backlog mit Anforderungen. Das Scrum Team setzt diese Anforderungen während eines Sprints selbstständig um. Die Ergebnisse werden dann vom Scrum Team und seinen Stakeholdern überprüft und für den nächsten Sprint angepasst. Das geschieht im Sprint Planning, wo ein Sprint Backlog erstellt wird. Ein sogenannter Scrum Master sorgt dafür, dass die Sprints regelkonform stattfinden.
Zurück zum Glossar.
Eine Mobile App ist eine speziell für Mobilgeräte bzw. mobile Betriebssysteme entwickelte Anwendungssoftware, die entweder als plattformunabhängige Cross-Plattform-, Hybrid- und Web App oder als eine nur auf einem System funktionierende Native App arbeiten kann.
Mobile Apps können entweder kostenlos sein oder für einen bestimmten Preis in verschiedenen App Stores erworben werden. Der Nutzungsbereich von Apps reicht von Messengern über Social Media bis hin zu Anwendungen zur Bild- oder Videobearbeitung.
Zurück zum Glossar.
Die Webentwicklung ist die Erstellung von Websites und Anwendungen für das Internet. Die Aufgabe eines Webentwicklers besteht darin sich neben der Planung von Design und Architektur auch um die Weiterentwicklung, Wartung, nachträgliche Verbesserung und Erstellung von Erweiterungen für bereits bestehende Websites bzw. Web Apps zu kümmern.
Für gewöhnlich führen Webentwickler Anforderungsanalysen durch. Außerdem müssen Internationalisierungs- und Lokalisierungsprozesse durchgeführt werden, wenn die Unternehmenswebsite einen globalen Fokus hat.
Drei Schichten
Für die Programmierung von Webseiten gibt es verschiedene Möglichkeiten. Hat man keine Programmierkenntnisse, kann man auf verschiedenste Homepage-Baukästen, wie wix, jimdo oder webnode zurückgreifen.
Wenn man ein grundlegendes Vorwissen von Programmiersprachen wie HTML, CSS, JavaScript und PHP besitzt, kann man die Anwendung mit höchstmöglicher Freiheit selbst programmieren.
Über die Hypertext-Auszeichnungssprache (Hypertext Markup Language) lässt sich das Grundgerüst einer Website definieren. Mit ihr können Elemente wie Textabschnitte oder Hyperlinks durch sogenannte Tags entwickeln. Sie dient in der Webentwicklung der semantischen Grobstrukturierung digitaler Inhalte.
Die Cascading Style Sheets (kurz CSS) wird von Webentwicklern genutzt, um das Erscheinungsbild einer in HTML formatierten Datei festzulegen.
JavaScript wird genutzt, um in einer Website dynamische Inhalte, wie Eingabefelder oder Animationen, zu integrieren. Sie wird als Erweiterung des Grundgerüsts aus HTML und CSS genutzt.
PHP ist eine Skriptsprache, die serverseitig interpretiert wird. Der Webserver übermittelt den die Datei an einen PHP-Interpreter, welcher die angeforderte Website erzeugt und an den Webserver zurückgibt. Von diesem wird die Interpreter-Ausgabe an den Browser gesendet.
Zurück zum Glossar.
Eine Hybrid App stellt eine Mischung aus verschiedenen Merkmalen von Native und Web Apps dar. Eine Hybrid App wird, genauso wie eine Native App, in der Regel über einen App Store heruntergeladen, installiert und vom Mobilgerät aus gestartet.
Im Aufbau unterscheidet sich diese dann bereits von der Native App und ruft eigentlich nur einen Browser auf, wo die Web App läuft. Dieser wird so angepasst, dass der Rahmen und das Menü unterdrückt werden. Damit Hybrid Apps auch auf die Hardware des Smartphones zugreifen können, ist es wichtig, dass die App auf dem Gerät gespeichert ist und nicht, wie Web Apps, von einem Webserver geladen werden.
Zurück zum Glossar.
Eine Native App ist eine auf ein bestimmtes Betriebssystem angepasste Anwendung, die meist mit der Hardware interagieren. So kann eine Native App zum Beispiel auf Daten- und Arbeitsspeicher, das GPS oder der Kamerafunktion des Endgerätes zugreifen.
Sie wird über den jeweiligen App Store des Betriebssystem heruntergeladen und da sie dauerhaft auf dem Endgerät gespeichert werden, ist nach der Installation in der Regel keine Internetverbindung nötig.
Besonders für komplexere oder rechenintensive App sind Native Apps aufgrund der Optimierung auf ein bestimmtes Betriebssystem eine sinnvolle Wahl.
Wenn ein Unternehmen seine Anwendung für verschiedene Betriebssysteme anbieten will, muss diese auch gleichzeitig für diese entwickelt werden, was hohe Entwicklungskosten mit sich bringt. Da bietet es sich an, wenn möglich, entweder eine Web App oder Hybrid App zu entwickeln.
Zurück zum Glossar.
Eine Web App ("web application" = Webanwendung) ist eine Anwendungssoftware, welche in der Regel auf HTML, JavaScript und CSS basiert und im Browser verschiedener Endgeräte über das Internet abgerufen werden kann, weshalb hierfür keine vorherige Installation oder ein Download nötig ist.
Während Native Apps extra für eine Zielplattform programmiert und installiert werden (App Entwicklung ist eine der Dienstleistungen, die wir bei twigbit anbieten), funktionieren Web Apps auf allen Betriebssystemen und Geräten, die über einen aktuellen Web Browser verfügen. Die Installation von Native Apps erfolgt über den jeweiligen App Store, während Web Apps keine Installation benötigen. Web Apps werden direkt im Browser geöffnet und passen sich an das Endgerät an, weshalb sie ohne Zulassungsprozess veröffentlicht werden können. Der Zugriff auf Web Apps über alle kompatiblen Browser sorgt für den wesentlichen Unterschied, dass sie eine durchgehende Internetverbindung benötigen.
Native Apps werden speziell für das Betriebssystem, auf dem sie laufen sollen, entwickelt. Wenn sie also auf mehreren Systemen laufen sollen, muss für jedes Betriebssystem eine eigene App programmiert werden. Daher besteht bei der Entwicklung dieser ein deutlich höherer Aufwand als bei Web Apps.
Aufgrund der hohen Auswahl an Browsern ist es nicht immer möglich Web Apps für jeden zu optimieren. Es empfiehlt sich daher, wenn es sich um eine komplexe Anwendung handelt, auf eine Native App zurückzugreifen.
Einen Vorteil gegenüber Native Apps haben Web Apps in der Schließung von Sicherheitslücken. Während bei Native Apps ein Download einer neuen Version nötig ist, um eine Sicherheitslücke zu schließen, lässt sich ein Security-Upgrade unkompliziert in die Software der Web App implementieren.
Viele Google Dienste wie Google Maps, Gmail oder auch die Suchmaschine zählen zu der Kategorie der Web Apps.
Andere Beispiele sind unter anderem auch verschiedene Internetangebote von Amazon und Ebay.
Web Apps bieten dem Nutzer in der Regel interaktive Elemente um die bereitgestellte Serviceleistung nutzen zu können. Normale Webseiten sind dagegen meist informativ.
Wir bei twigbit können Ihnen bei der Entwicklung von Apps und Software helfen. Wenn Sie also Unterstützung benötigen, helfen wir gerne.
Zurück zum Glossar.
Die elektronische Identifizierung bezeichnet die Verwendung von Personenidentifizierungsdaten in elektronischer Form und ist der neue und sichere Weg des Kunden Onboardings.
Die eID ist eine kostengünstige Lösung, da sie kein Lesegerät und keine dritte Person zur Identifizierung benötigt. Aus eben diesen Gründen stellt die eID einen schnellen und intuitiven Vorgang dar.
Von der elektronischen Unterschrift bis zum elektronischen Zertifikat gibt es viele verschiedene Arten der elektronischen Identifizierung.
Wir bei twigbit können Ihnen bei der Entwicklung von Möglichkeiten zur elektronischen Identifizierung helfen. Wenn Sie also Unterstützung benötigen, helfen wir gerne.
Zurück zum Glossar.
Softwareentwicklung ist die Herstellung oder Entwicklung von Anwendungen für den Computer und das Internet.
Neben der Programmierung enthält die Softwareentwicklung alle Prozesse, die mit der Erstellung und dem Design neuer Systeme zusammenhängen.
Die Branche der Softwareentwicklung wächst schnell, was einige der verschiedenen Arten zeigen.
Die Hauptaufgabe der Softwareentwickler ist es die Grundlagen für operative Systeme, an denen Computerprogrammierer arbeiten, zu schaffen.
Das geschieht indem sie für neue Systeme und Software Code entwerfen, schreiben und testen. Außerdem bestätigen Softwareentwickler die Leistungsfähigkeit von bestehenden Projekten indem sie Diagnoseprogramme und Qualitätssicherungsprüfungen an diesen durchführen.
Der Entwicklungsprozess besteht aus sechs grundsätzlichen Phasen.
Die Anforderungen an das Projekt werden von Projektmanagern und Stakeholdern definiert, z.B. wer ist der zukünftige Nutzer und wie wird die Anwendung bedient. Anschließend wird die Umsetzbarkeit der Anforderungen geprüft.
Hier wird über den Softwarebedarf, das Aussehen und den Zeitrahmen für die Entwicklung der Software entschieden. Zusätzlich erstellen die Ingenieure ein Datenmodell. Es werden erste Mockups gemäß den vorher definierten Anforderungen erstellt.
Hier beginnt die Programmierung auf Grundlage der erhaltenen Systemdesignunterlagen. Der Code wird basierend auf dem Dokument zur Spezifikation des Systemdesigns geschrieben. Grundsätzlich ist das die zeitaufwendigste Phase des Softwareentwicklungszyklus.
Während des Entwicklungsprozesses wird die Software getestet um Probleme während des Builds zu finden und direkt beheben zu können.
Neben Benutzertest werden auch Unit-Tests, Systemtests, Abnahmetests und Integrationstests durchgeführt.
Wenn alle Fehler gefunden worden und die Software zuverlässig läuft, wird sie veröffentlicht und dem Endnutzer zur Verfügung gestellt.
In dieser Phase werden die Probleme, die bei der Nutzung durch die Kunden aufkommen, gelöst.
Zurück zum Glossar.
Die Website ist der komplette Auftritt eines Unternehmens oder einer Person im Internet, die unter einer individuellen Webadresse erreichbar ist. In der Regel wird sie über die Homepage des Betreibers erreicht.
Diese wird im Normalfall mit HTML erstellt. Dabei besteht sie heute im Allgemeinen aus zahlreichen HTML-Dateien.
Der Name leitet sich aus den englischen Worten web (aus World Wide Web) und site ("Ort", "Platz", "Stelle") ab.
Wir bei twigbit helfen Ihnen dabei Ihren neuen Webauftritt zu entwickeln. Wenn Sie also Unterstützung benötigen, helfen wir gerne.
Zurück zum Glossar.
Bei der User Experience (Nutzererfahrung) handelt es sich um alle Aspekte der Erlebnisse von Nutzern bei dem Kontakt mit einer Dienstleistung, einem Produkt oder einer Website und steht im Zusammenhang mit der Gestaltung von Websites oder Apps. Die User Experience umfasst alle subjektiven Eindrücke und Gefühle, welche von der Erwartungshaltung des Nutzers abhängt. Die User Experience kann für verschiedene Nutzer sehr unterschiedlich verlaufen. Dabei kommt es auf Faktoren, wie z.B. dem Alter und der Interneterfahrung, an.
Die User Experience steht im Verhältnis zu dem User Interface, da ein unübersichtliches UI den Nutzer verwirren oder frustrieren kann. Das UI ist aber nicht der einzige Faktor, der die UX bestimmt.
Bestandteile
Wir bei twigbit können Ihnen bei dem Design Ihrer User Experience helfen. Wenn Sie also Unterstützung benötigen, helfen wir gerne.
Zurück zum Glossar.
Das User Interface (Benutzerschnittstelle) ist das visuelle Erscheinungsbild einer Website oder Anwendung. Im App Design ist es das Aussehen der App. Sie ist die Stelle, mit der ein Mensch mit einer Maschine oder einem Arbeitsgerät in Interaktion tritt.
Bei Software ist dabei häufig von der GUI (graphical user interface) die Rede. Das ist die grafische Oberfläche einer Anwendung, die für die Bedienbarkeit von Anwendungssoftware auf einem Rechner verantwortlich ist.
Bestimmte Funktionen der Software können per Klick oder Tastendruck ausgeführt werden. Das Programm arbeitet im Hintergrund und zieht Informationen aus Datenbanken und Eingaben heran. Das Ergebnis wird grafisch aufbereitet zurück geliefert.
Das Ziel ist es, den Nutzer nicht mit unnötigen Informationen zu überladen und somit die Verwendung der Software so unkompliziert wie möglich zu machen.
Das User Interface bestimmt die Nutzererfahrung, denn ein Programm mit einer unübersichtlichen grafischen Oberfläche, egal wie leistungsfähig es ist, wird vom Nutzer als negativ bewertet, da es den ihn verwirrt und frustriert.
Das User Interface muss daher so verständlich wie möglich gestaltet werden.
Wir bei twigbit können Ihnen bei dem Design Ihres User Interface helfen. Wenn Sie also Unterstützung benötigen, helfen wir gerne.
Zurück zum Glossar.
Prototyping bezeichnet die Entwicklung eines Musters oder Prototyps in der Softwareentwicklung und führt schnell zu ersten Ergebnissen. Durch frühzeitiges Feedback ist die schnelle Erkennung und Behebung von Problemen und Änderungswünschen möglich.
Durch das Prototyping können unter anderem Kosten und benötigte Ressourcen besser eingeschätzt werden und das visuelle Design und damit verbundene Interaktionsmuster können getestet werden. Außerdem kann die Qualitätssicherung frühzeitig eingebunden werden.
Arten
Wir bei twigbit nutzen Prototyping als Teil unseres Design Prozesses. Wenn Sie dabei Unterstützung benötigen, helfen wir Ihnen gerne.
Zurück zum Glossar.
Ein Onlineshop ist eine Website, die das physische Geschäft auf eine digitale Plattform oder Website überträgt und online Waren und Dienstleistungen anbietet und verkauft.
Sie können als Zusatz zu real bestehenden Geschäften oder als eigenständiger Shop existieren.
Mit Onlineshops sind verschiedene Vorteile gegenüber einem physischen Handel verbunden. So können Kunden komfortabel von jedem beliebigen Ort mit Internetanschluss einkaufen und ist nicht an Öffnungszeiten gebunden.
Wir bei twigbit helfen Ihnen dabei Ihren Onlineshop ins Leben zu rufen. Wenn Sie also Unterstützung benötigen, helfen wir Ihnen gerne.
Zurück zum Glossar.
Der Begriff DevOps ist ein modernes Framework der Softwareentwicklung und setzt sich aus Entwicklung (Development) und IT-Bereich (Operations) zusammen. Durch die Koordinierung und Zusammenarbeit von Rollen wie Entwicklung, Sicherheit, Qualitätstechnik und IT-Betrieb können bessere und zuverlässigere Produkte geliefert werden. Außerdem sollen Produkte in konsistenter Stabilität und hoher Qualität ausgeliefert werden.
DevOps wird oft gemeinsam mit der agilen Softwareentwicklung verwendet und bringt eine Reihe von Vorteilen mit sich, da klassische Ärgerlichkeiten wie zu späte Änderungswünsche des Kunden und unrealistische Deadlines vermieden werden sollen und alle am Auslieferungszyklus eines Produkt beteiligten Bereiche zusammenarbeiten.
Auf den Anwendungslebenszyklus wirkt sich DevOps durch die Planungs-, Entwicklungs-, Bereitstellungs- und Betriebsphasen aus. Die Phasen hängen voneinander ab und jede Rolle ist in bestimmtem Umfang an jeder Phase beteiligt.
Zurück zum Glossar.
Der Teil des IT-Systems, der sich mit der Datenverarbeitung im Hintergrund beschäftigt, ist das Backend, wobei es sich in der IT-Branche meist auf den Client-Server bezieht.
Bei einer Software bzw. einer Anwendung wird fast immer der administrative Teil als Backend bezeichnet, zum Beispiel die Software zur Pflege des Contents einer Website, Datenbank-Server oder Dateizugriffsysteme.
Das Backend Development ist somit die Entwicklung und Wartung dieser im Hintergrund laufenden Systeme. Backend-Developer entwickeln Schnittstellen für die Frontend-Developer, die diese für die App oder die Darstellung einer Website nutzen können.
Zurück zum Glossar.
Beim User Centered Design wird sich in jeder Phase des Designprozesses auf die Benutzer und ihre Bedürfnisse konzentriert, damit eine optimale User Experience ermöglicht werden kann. Die Benutzer werden über eine Vielzahl von Forschungs- und Designtechniken in den Designprozess einbezogen, um für sie hochgradig nutzbare und zugängliche Produkte zu schaffen. Dabei wird eine Mischung aus investigativen (wie z.B. Umfragen und Interviews) und generativen (wie z.B. Brainstorming) Methoden verwendet, um ein Verständnis für die Bedürfnisse der Benutzer zu entwickeln. Im engen Austausch mit dem späteren Kunden entsteht das Produkt so in einem iterativen Prozess.
Der Begriff User Centered Design wird häufig synonym mit dem Begriff Human Centered Design verwendet, wobei diese nur sprachliche Unterschiede aufweisen. Der Begriff "User" (Nutzer) bezeichnet eine bestimmte Zielgruppe, während mit "Human" (Mensch) neben dem Nutzer auch weitere Stakeholder beschrieben werden.
Die 4 Phasen der UCD
Phase 1: Verstehen des Nutzungskontextes
Phase 2: Spezifikation der Nutzungsanforderungen
Phase 3: Erarbeiten von Gestaltungslösungen
Phase 4: Evaluieren von Gestaltungslösungen
Zurück zum Glossar.
React JS ist eine JavaScript Bibliothek, die in der Webentwicklung verwendet wird, um interaktive Elemente auf Websites zu erstellen. Auf GitHub ist es zwar das beliebteste JavaScript Framework, aber es beschreibt sich selbst als JavaScript Bibliothek.
JavaScript ist eine Skriptsprache, die zum Erstellen und Steuern dynamischer Webinhalte, wie animierte Grafiken oder interaktive Formulare, verwendet wird.
JavaScript Bibliotheken sind Sammlungen von vorgefertigtem JavaScript Code, der für gängige JS-Aufgaben verwendet werden kann, so dass Sie den zeitintensiven (und unnötigen) Prozess der manuellen Kodierung umgehen können.
React JS wird ausschließlich für die "Client Side" Programmierung und die Gestaltung von möglichst performanten Oberflächen verwendet.
Zurück zum Glossar.
Flutter erschien Ende 2018 erstmals als Open-Source-Projekt und vereinfacht den Prozess der App Entwicklung von Google. Flutter ist ein Framework für die Entwicklung von Cross-Platform Apps mit der Programmiersprache Dart. In erster Linie wird Flutter für die Entwicklung von iOS und Android Apps verwendet. Auch für macOS, Windows, Linux und Google Fuchsia lassen sich hiermit Apps entwickeln.
Für mit Flutter entwickelte Apps muss man als Programmierer nicht auf die Besonderheiten der verschiedenen Systeme achten, da diese mit nur einer Codebase entwickelt werden können.
Schnelle Ausführungsgeschwindigkeit und kurze Entwicklungszeiten sind der vorrangige Fokus von Flutter.
Flutter selbst verwendet die Dart Virtual Machine (Dart-VM), sowie die Grafikbibliothek Skia. Das Programm Flutter wurde in C++ geschrieben.
Die von Google entwickelte Programmiersprache Dart läuft wie JavaScript direkt als Web App im Browser und soll daher zu einem modernen Nachfolger der klassischen Web-Skriptsprache werden.
Während Flutter-Programme mit dem Transcompiler Dart2js nach JavaScript übersetzt werden und so direkt in modernen Webbrowsern laufen, lassen sie sich auf einem Server direkt ausführen.
Die objektorientierte Programmierung wird konsequent bis in die Benutzeroberfläche umgesetzt.
Die Oberfläche eines Flutter Programms besteht im Wesentlichen aus Widgets. Diese können ineinander Geschachtelt sein. Jeder angezeigte Text oder Button ist ein Widget mit unterschiedlichen Eigenschaften, die verändert werden können. Diese können sich gegenseitig beeinflussen und auf Statusänderungen von außen mit eingebauten Funktionen reagieren. Diese können darüber hinaus beliebig um zusätzliche Funktionen erweitert werden.
Die Programmiersprache Dart weist viele Ähnlichkeiten zu anderen Sprachen in grundlegenden Entwicklungsmechaniken auf. Die Entwicklung mit Flutter wird erheblich beschleunigt, da es zusammen mit Dart von Google entwickelt wurde und die beiden somit aufeinander aufbauen, was die Entwicklung enorm beschleunigt.
Weitere Vorteile sind, dass Flutter und Dart Open-Source sind und Flutter frei verwendbar ist.
Außerdem werden eine umfangreiche Dokumentation und Community-Support geboten.
Auch dass nur eine Codebasis für alle wichtigen Betriebssystem entwickelt werden muss, ist ein Vorteil von Flutter, ebenso wie die vorgefertigten UI-Elemente, welche feste Bestandteile der Software sind.
Zurück zum Glossar.
Miro ist ein digitales Whiteboard mit dem eine einfache online Zusammenarbeit ermöglicht wird. Durch das Teilen des sogenannten Miro Boards lassen sich u.a. Informationen präsentieren und Mindmaps erstellen. Dazu bietet Miro verschiedene Werkzeuge, wie z.B. Textflächen, Post-Its und Kommentare. Im Normalfall ist Miro eine unendlich große weiße Fläche, aber es werden auch verschiedene Vorlagen angeboten.
Zurück zum Glossar.