AP2_FIAE - Entwurf kundenspezifischer Softwareanwendungen - Entwurf von Schnittstellen
Deck: AP2_FIAE Kategorie: Entwurf kundenspezifischer Softwareanwendungen Subkategorie: Entwurf von Schnittstellen Anzahl Karten: 37
Was ist eine Benutzeroberfläche (User Interface - UI)?::Die Benutzeroberfläche ist der Teil eines Softwaresystems, über den Benutzer mit der Software interagieren.
Was sind grafische Benutzeroberflächen (GUIs)?::Grafische Benutzeroberflächen (Graphical User Interface - GUI) bieten eine visuelle Interaktion mit Symbolen, Fenstern und grafischen Elementen, z.B. in Desktop-Anwendungen oder Webseiten.
Was sind befehlszeilenbasierte Schnittstellen (CLIs)?::Befehlszeilenschnittstellen (Command Line Interface - CLI) ermöglichen die Interaktion durch textbasierte Befehlseingabe und finden sich oft in Entwicklungs- und Administrationswerkzeugen.
Was sind sprachbasierte Schnittstellen (VUIs)?::Sprachbasierte Interfaces (Voice User Interface - VUI) erlauben die Interaktion durch gesprochene Befehle, z.B. bei intelligenten Assistenten wie Alexa oder Siri.
Was sind Application Programming Interfaces (APIs)?::APIs sind Schnittstellen, die es verschiedenen Softwareanwendungen ermöglichen, miteinander zu kommunizieren. Sie definieren Methoden und Datenformate für den Austausch zwischen unterschiedlichen Systemen.
Was sind Beispiele für die Verwendung von Web-APIs?::Web-APIs ermöglichen die Interaktion mit Webdiensten und den Zugriff auf externe Daten über das Internet, oftmals für die Integration von Drittsystemen.
Was sind Betriebssystem-APIs?::Betriebssystem-APIs stellen Funktionen zur Verfügung, die es Anwendungen ermöglichen, mit dem Betriebssystem zu interagieren, wie Dateioperationen oder Netzwerkkommunikation.
Was sind Datenbank-APIs?::Datenbank-APIs ermöglichen die Abfrage und Manipulation von Daten in Datenbankmanagementsystemen.
Was sind Datenschnittstellen (Data Interfaces)?::Datenschnittstellen beschreiben die Struktur, durch die Daten zwischen unterschiedlichen Systemen oder Komponenten übertragen werden. Sie sind essenziell für die Integration von Systemen.
Was sind Beispiele für dateibasierte Schnittstellen?::Bei dateibasierten Schnittstellen werden Daten in speziell formatierten Dateien zwischen Systemen ausgetauscht.
Was sind Datenströme (Streaming Interfaces)?::Datenströme (Streaming Interfaces) ermöglichen die kontinuierliche Übertragung von Daten zwischen Quellen und Empfängern, häufig in Echtzeitsystemen genutzt.
Was müssen Entwickler beim Design von Schnittstellen berücksichtigen?::Bei der Entwicklung und dem Design von Schnittstellen sind Faktoren wie Konsistenz, Sicherheit, Performanz und Dokumentation zu berücksichtigen, um effektive und benutzerfreundliche Lösungen zu schaffen.
Was bestimmen Eingaben (Inputs) bei Schnittstellen?::Eingaben (Inputs) bestimmen, welche Daten oder Informationen in eine Funktion oder Schnittstelle (API) hineingegeben werden können.
Was definiert das Datenformat bei Eingabespezifikationen?::Das Datenformat definiert die erwartete Struktur der Eingabedaten, z.B. JSON, XML oder Formdaten bei Web-APIs.
Was sind Datenfelder in Eingabespezifikationen?::Datenfelder listen die spezifischen Felder auf, die in der Eingabe enthalten sein müssen, inklusive Datentypen wie String, Integer oder Boolean.
Was ist die Validierung in Eingabespezifikationen?::Die Validierung definiert Regeln für die Überprüfung der Eingabewerte, z.B. die Länge eines Strings oder den Wertebereich eines Integers.
Was sind Pflicht- und optionale Felder in Eingabespezifikationen?::Pflichtfelder und optionale Felder unterscheiden, welche Datenfelder zwingend erforderlich sind und welche optional eingefügt werden können.
Was beschreiben Ausgaben (Outputs) bei Schnittstellen?::Ausgaben (Outputs) beschreiben, welche Daten oder Informationen von einer Funktion oder Schnittstelle zurückgegeben werden.
Was definiert das Datenformat bei Ausgabespezifikationen?::Das Datenformat gibt an, in welchem Format die Ausgabedaten bereitgestellt werden.
Was sind Datenfelder in Ausgabespezifikationen?::Datenfelder definieren die spezifischen Felder der Ausgabedaten mit Datentypen.
Was sind Standard- und Fehlerwerte in Ausgabespezifikationen?::Standard- und Fehlerwerte bestimmen Werte oder Objekte, die im Fall eines erfolgreichen Durchlaufs oder bei Fehlerfällen zurückgegeben werden.
Was sind Fehlerfälle (Error Handling) bei Schnittstellen?::Fehlerfälle sind essentiell, um zu definieren, wie mit Fehlern oder unerwarteten Inputs umgegangen wird.
Was sind Fehlercodes bei der Fehlerbehandlung?::Fehlercodes bieten eine Liste spezifischer Fehlercodes, die helfen, den Fehler genau zu identifizieren.
Was sind Fehlermeldungen bei der Fehlerbehandlung?::Fehlermeldungen definieren klare und verständliche Fehlermeldungen, die mehr Kontext zum Fehler geben.
Was beschreibt die Fehlerbehandlung bei Schnittstellen?::Die Fehlerbehandlung beschreibt Strategien, wie die Schnittstelle auf unterschiedliche Fehler reagieren sollte.
Was ist Loose Coupling?::Loose Coupling bezieht sich auf das Prinzip, Abhängigkeiten zwischen Komponenten so gering wie möglich zu halten, sodass jede Komponente unabhängig operieren kann.
Was sind Vorteile von Loose Coupling?::Vorteile von Loose Coupling sind erhöhte Wartbarkeit, Flexibilität und Testbarkeit, da Änderungen in einer Komponente minimale Auswirkungen auf andere haben.
Wie kann Loose Coupling umgesetzt werden?::Loose Coupling kann durch die Verwendung von Interfaces, abstrakten Klassen und Dependency Injection umgesetzt werden.
Was bedeutet High Cohesion?::High Cohesion bedeutet, dass die Funktionalitäten innerhalb einer Komponente eng miteinander verbunden sind und die Komponente eine klar definierte Aufgabe hat.
Was sind Vorteile von High Cohesion?::Vorteile von High Cohesion sind erhöhte Verständlichkeit, Wiederverwendbarkeit und Effizienz der Komponenten.
Wie kann High Cohesion umgesetzt werden?::High Cohesion kann durch das Design kleinerer, fokussierter Klassen und die klare Zuordnung von Verantwortlichkeiten zu Methoden und Klassen umgesetzt werden.
Wie ergänzen sich Loose Coupling und High Cohesion?::Loose Coupling und High Cohesion ergänzen sich, indem High Cohesion für fokussierte Komponenten sorgt und Loose Coupling minimale Beziehungen zwischen diesen Komponenten gewährleistet.
Was ist der Zweck der Dokumentation von Schnittstellen?::Die Dokumentation von Schnittstellen stellt sicher, dass entwickelte APIs von anderen Entwicklern oder Systemen effektiv genutzt werden können.
Was sind Interface Description Languages (IDLs)?::Interface Description Languages (IDLs) sind speziell entworfene Programmiersprachen, die verwendet werden, um die Struktur und das Verhalten von APIs zu beschreiben.
Welche Vorteile bieten IDLs?::IDLs bieten Vorteile wie Interoperabilität, Einheitlichkeit und Wiederverwendbarkeit, da sie einen klaren Vertrag zwischen Dienstanbieter und -nutzer darstellen.
Was ist OpenAPI?::OpenAPI (ehemals Swagger) ist eine spezifische IDL, die sich zum De-facto-Standard für die Beschreibung von RESTful APIs entwickelt hat.
Welche Vorteile bietet OpenAPI?::OpenAPI bietet Vorteile wie automatische Dokumentation, Code-Generierung sowie Design- und Testwerkzeuge für APIs.