Was bedeutet "kopflos"?

85

Beim Lesen des QTKit Application Programming Guide bin ich auf den Begriff "kopflose Umgebungen" gestoßen - was bedeutet das? Hier ist die Passage:

... einschließlich Anwendungen mit einer grafischen Benutzeroberfläche und Tools, die in einer „kopflosen“ Umgebung ausgeführt werden sollen. Mit dem Framework können Sie beispielsweise Befehlszeilentools schreiben, mit denen QuickTime-Filmdateien bearbeitet werden.

Vamos
quelle

Antworten:

110

"Headless" bedeutet in diesem Zusammenhang einfach ohne grafische Anzeige. (dh: Konsolenbasiert.)

Viele Server sind "kopflos" und werden beispielsweise über SSH verwaltet.

John Parker
quelle
2
Sie existieren in den Hintergrundoperationen. Beispiele sind virtuelle Server, die auf einem übergeordneten Betriebssystem ausgeführt werden. Sie hören nicht unbedingt aktiv auf Tastatur- und Mausereignisse. Nicht einmal der Bildschirm.
Bimal Poudel
@ JohnParker Einer meiner Leads sagte etwas über Headless Maven, was mich verwirrte, da Maven selbst keine GUI hat. Gibt es einen Headless-Modus in Maven?
Kasun Siyambalapitiya
11

Sie wissen höchstwahrscheinlich, was ein Browser ist. Nehmen Sie nun die GUI weg und Sie haben einen sogenannten kopflosen Browser. Headless-Browser können dieselben Aufgaben ausführen wie normale Browser, jedoch schneller. Sie eignen sich hervorragend zum programmgesteuerten Automatisieren und Testen von Webseiten.

abi
quelle
1
@GayanPathirage PhantomJS ist ein beliebtes Beispiel.
Adam Burley
Die Frage bezieht sich auf eine kopflose Umgebung, nicht auf einen kopflosen Browser. Dies sind zwei verschiedene Dinge, die wir heute gelernt haben. Wir haben den Jenkins-Server so konfiguriert, dass er unsere Selentests auf einer dynamischen Docker-Instanz ausführt. Wir versuchen, den Screenshot des Browsers zu machen. Es ist möglich, dass der Browser nicht kopflos ist. Wenn ich jedoch versuche, den Screenshot mit der Robot-Klasse (java.awt.Robot) zu machen, wird der kopflose Umgebungsfehler angezeigt, da die Umgebung Windows-Grafiken enthält
Akash Chavan
6

Headless bedeutet, dass die Anwendung ohne grafische Benutzeroberfläche (GUI) und manchmal überhaupt ohne Benutzeroberfläche ausgeführt wird.

Hierfür gibt es ähnliche Begriffe, die in leicht unterschiedlichem Kontext und Gebrauch verwendet werden. Hier sind einige Beispiele.

Kopflos / Geist / Phantom

Dieser Begriff wird eher für schwergewichtige Kunden verwendet. Die Idee ist, einen Client in einem nicht grafischen Modus auszuführen, beispielsweise mit einer Befehlszeile. Der Client wird dann ausgeführt, bis seine Aufgabe abgeschlossen ist, oder er wird über eine Eingabeaufforderung mit dem Benutzer interagieren.

Eclipse kann beispielsweise im Headless-Modus ausgeführt werden. Dieser Modus ist praktisch, wenn Sie Jobs im Hintergrund oder in einer Build-Factory ausführen möchten.

Sie können Eclipse beispielsweise im Grafikmodus ausführen, um Plugins zu installieren. Dies ist in Ordnung, wenn Sie es nur für sich selbst tun. Wenn Sie jedoch Eclipse so verpacken, dass es von den Entwicklern eines großen Unternehmens verwendet werden kann, und mit allen Updates Schritt halten möchten, möchten Sie wahrscheinlich einen reproduzierbareren, automatisch einfacheren Weg finden.

In diesem Moment wird der Headless-Modus aktiviert: Sie können Eclipse in der Befehlszeile mit Parametern ausführen, die angeben, welche Plugins installiert werden sollen.

Das Schöne an dieser Methode ist, dass sie in eine Build Factory integriert werden kann!

Gesichtslos

Dieser Begriff wird eher für Anwendungen in größerem Maßstab verwendet. Es wurde von UX-Designern geprägt. Eine gesichtslose App interagiert mit Benutzern auf eine Art und Weise, die traditionell menschlichen Benutzern gewidmet ist, wie E-Mails, SMS, Telefon ... aber KEINE GUI.

Einige Unternehmen verwenden beispielsweise SMS als Einstiegspunkt für den Dialog mit Benutzern: Der Benutzer sendet eine SMS mit einer Anfrage an eine bestimmte Nummer. Dies führt dazu, dass automatisierte Dienste ausgeführt werden und dem Benutzer antworten.

Es ist eine schöne Benutzererfahrung, da man einige Besorgungen von seinem Telefon aus erledigen kann. Sie müssen nicht unbedingt über eine Internetverbindung verfügen, und die Interaktion mit der App ist synchron.

Auf der Back-End-Seite kann der Dienst entscheiden, dass er die Anforderung des Benutzers nicht versteht, und den automatisierten Modus verlassen. Der Benutzer tritt dann in einen interaktiven Modus mit einem menschlichen Bediener ein, ohne sein Kommunikationswerkzeug zu ändern.

avi.elkharrat
quelle
0

Headless kann als Browser oder Programm bezeichnet werden, für das keine grafische Benutzeroberfläche erforderlich ist. Für eine allgemeine Person nicht wirklich nützlich, um die Informationen anzuzeigen und nur in Form von Code an ein anderes Programm weiterzugeben.

Warum verwendet man ein Headless-Programm?

Einfach, weil es das speedund verbessert und performancefür alle Benutzer verfügbar ist, einschließlich derer, die Zugriff auf die Grafikkarte haben. Ermöglicht testing browserless setupsund hilft Ihnen multitask.

Anleitung zum Headless Browser

Was ist GUI?

Champion-Läufer
quelle