it-swarm.com.de

Warum machen Entwickler die Installation unter Windows nicht automatisch?

Dies ist die Umkehrung zu "Warum machen Entwickler keine Installationsassistenten? linux? ", was interessant ist, aber mich denken ließ" Automatische Installation ist der natürliche Weg. Warum verwenden sie Assistenten? ".
Hier ist also die umgekehrte Frage :

Ich bin mir sicher, dass es nicht um Faulheit oder ähnliches geht, aber ich verstehe nicht, warum Entwickler, selbst von Apps, die hauptsächlich auf Verbraucher ausgerichtet sind, keine vollautomatische Installation durchführen, bei der Sie überhaupt nicht gestört werden. Dieselben Apps werden normalerweise automatisch unter Linux installiert. Warum also nicht Windows und Mac OS?

Gibt es einen technischen Grund für diesen Trend oder handelt es sich nur um Konventionen?

35
Volker Siegel

Informierte Zustimmung

Benutzer sollten zunächst entscheiden können, ob das Programm überhaupt auf ihrem Computer installiert werden soll oder nicht. Es mag für Sie selbstverständlich erscheinen, dass sich die Leute offensichtlich für die Installation eines Programms entscheiden, aber das Hauptmerkmal eines Schadprogramms ist, dass es installiert werden kann, ohne dass der Computerbenutzer davon erfährt.

Die Einwilligung nach Aufklärung wird durch UAC noch deutlicher.

Lizenzvereinbarung

Die meisten modernen Programme folgen einem "Click-through" -Modell für die Lizenzierung. Das heißt, der Benutzer stimmt den Bedingungen der Lizenz während des Installationsvorgangs als Bedingung für die Installation des Programms zu. Dass Benutzer diese Vereinbarungen selten lesen, bedeutet nicht, dass sie nicht an sie gebunden sind, insbesondere wenn sie das Kontrollkästchen "Ich stimme diesen Bedingungen zu" aktiviert haben.

Optionen konfigurieren

Viele Softwarepakete verfügen über Optionen, mit denen Sie die Art und Weise ändern können, in der die Software auf bestimmte Weise installiert wird. Mit der einfachsten Option können Sie entscheiden, ob Sie ein Symbol auf dem Desktop möchten oder nicht. In größeren Anwendungen können Sie jedoch entscheiden, welche Funktionen installiert werden sollen.

Installations fortschritt

Während Programme im Windows-Ökosystem während des Installationsprozesses immer weniger aufdringlich werden (z. B. registrierungsfreie Installation), ist die Installation häufig immer noch ein nicht trivialer Vorgang. Fortschrittsbalken und andere visuelle Hilfsmittel zeigen an, dass tatsächlich etwas passiert. Auf der letzten Seite des Assistenten erfahren Sie, ob die Installation erfolgreich war oder nicht.

Anfangen

Schließlich sagen Ihnen die besten Softwarepakete, was als nächstes zu tun ist. Was sind die ersten Schritte, wie fange ich an, wie bekomme ich Hilfe? Die meiste Software hinterlässt bei der Installation ein Startsymbol, und das war's. Überschätzen Sie niemals das Fachwissen Ihrer Benutzer. So unglaublich es Ihnen auch erscheinen mag, es gibt immer noch Leute, die nicht wissen, wie sie Softwareprogramme finden und starten können, die sie gerade installiert haben.

49
Robert Harvey

Nach allem, was ich gesehen habe, läuft es wirklich auf das gesamte "Windows-Erlebnis" hinaus. Das heißt, jede Aktion oder Option für den Benutzer so sichtbar wie möglich zu machen.

Der Grund, warum ich dies sage, ist, dass für die Installation keine grafische Benutzeroberfläche erforderlich ist. MSI-basierte Installationsprogramme können auf ähnliche Weise wie Linux-basierte Pakete unbeaufsichtigt installiert werden. Die GUI ist völlig optional, dient aber auch hier dazu, dem Benutzer eine visuelle Darstellung dessen zu geben, was im Hintergrund vor sich geht.

Unter Linux kann dies einfach mithilfe eines Paketmanagers erreicht werden. Wenn ich ein Paket installieren möchte, muss ich dieses Paket speziell anfordern. Für die weniger technisch eingeschlossenen steht normalerweise ein GUI-basierter Paketmanager zur Verfügung, mit dem der Benutzer die gewünschte Software installieren kann.

In Windows gibt es so etwas nicht. Wenn ein Benutzer Windows-basierte Software installieren möchte, muss er die Software separat suchen und herunterladen. Es gibt kein standardisiertes Tool, das den Benutzer bei der Konfiguration und Installation der Software unterstützt. Daher ähnelt die mit jeder Software gelieferte Installations-GUI der Paketmanager-GUI unter Linux. Es ist lediglich vorhanden, damit der Benutzer die Installation konfigurieren und den Fortschritt verfolgen kann.

Es gibt viele Fälle, in denen eine Installations-GUI aufgrund einer vorhandenen Verwaltungs-GUI nicht erforderlich ist. Beispielsweise installiert die beliebte Steam-Plattform alle Spiele oder Software, die über den Steam Store erhältlich sind, mithilfe von Installationsskripten automatisch.

Ein weiteres gutes Beispiel wäre SCCM. System Center Configuration Manager (kurz SCCM) ist eine Software zum Verwalten von Computergruppen in einem Netzwerk. Es beinhaltet die Möglichkeit, Software für die Installation über eine GUI namens Software Center verfügbar zu machen. Jedes MSI-basierte Installationsprogramm kann auf Knopfdruck zur Installation bereitgestellt werden. In der Umgebung, in der ich arbeite, steht Software zur Verfügung, die von der Creative Suite von Adobe bis hin zu Dingen wie WinZip reicht. Ein Benutzer muss lediglich den Katalog durchsuchen, um die verfügbaren Informationen zu finden, auf Installieren klicken und auf die Bestätigung warten. Es ist fast genau der gleiche Vorgang, als ob ich etwas auf meinem Heimcomputer unter Linux Mint installieren wollte.

21
Thebluefish

Fenster verwenden msi-Dateien , die weitgehend genauso funktionieren wie andere Programmpakete. Sie können unbeaufsichtigt installiert werden, indem ein Flag gesetzt wird. Das Standardverhalten ist jedoch, dass Windows eine grafische Benutzeroberfläche mit allen im Paket definierten Konfigurationsoptionen anzeigt. Für einen normalen Benutzer verhalten sich msi-Dateien daher genau wie exe-Installationsprogramme.

Als Benutzer, der sich häufig dafür entscheidet, die Standardeinstellungen zu ändern, finde ich, dass die Verwendung der GUI der einfachste Weg ist, um zu erfahren, welche Optionen ich bei der Installation eines Programms habe, und dass es praktisch ist, sie gleichzeitig zu ändern.

In Bezug auf die Möglichkeit eines Installationsprogramms, das standardmäßig völlig leise ist. Unter Windows ist es üblich, dass der Benutzer das Installationsverzeichnis auswählen darf. Wenn Sie diese Option in einer GUI nicht zulassen, werden Sie von vielen Benutzern auf die falsche Seite gebracht. Außerdem werden Benutzer verwendet, um bei der Installation eines Programms mindestens ein Minimum an Dialogen zu sehen. Wenn Sie nichts anzeigen, denken sie möglicherweise, dass die Installation fehlgeschlagen ist.

6
aaaaaaaaaaaa

Entwickler machen die Installation unter Windows automatisch, aber nicht die gesamte Software wird in diesem Format angeboten. Im Gegensatz zu vielen anderen Antworten hier hat Windows einen standardmäßigen und weit verbreiteten "Paketmanager" (ertrage es mit mir), der jedoch selbst unter Entwicklern relativ wenig bekannt ist, da er sich an Unternehmen und nicht an Endbenutzer richtet.

Es heißt SCCM und wird von jedem großen Unternehmen zur Verwaltung seiner Windows-Installationen verwendet. Neben der Verwaltung von Paketen (Push-Software und Abhängigkeiten zu Client-Computern) werden auch Updates für Windows und andere installierte Software verwaltet.

SCCM wird nicht einmal von technischen Benutzern zur Verwaltung ihrer eigenen Computer verwendet. Es ist nicht wirklich dazu gedacht, einen großen Vorteil für die Verwaltung eines einzelnen Computers zu bieten. Tatsächlich funktioniert es möglicherweise nicht einmal ohne Active Directory-/nicht domänenverbundene Computer. Ich würde es also nicht wirklich als Windows Paketmanager bezeichnen, selbst wenn es die Software- und Update-Bereitstellung verwaltet.

Mein Punkt hier ist jedoch, dass es automatische Installationen unter Windows gibt und diese weit verbreitet sind - von Systemadministratoren in großen Unternehmen . Wenn Sie ein Produkt sehen, das einen MSI-Download anbietet, liegt dies wahrscheinlich daran, dass es automatisch über SCCM auf Tausenden von Computern bereitgestellt werden soll.

Haftungsausschluss: Ich selbst habe SCCM nicht verwendet und weiß wenig darüber, daher könnte ich mich in einigen der oben genannten Feinheiten irren.

5
Roman Starkov

Haftungsausschluss: Dies ist größtenteils Spekulation, basiert jedoch auf meinen Erfahrungen beim Packen von Windows-Anwendungen für Installation und Bereitstellung.

Es hängt alles davon ab, was der De-facto-Standard für die Installation auf einer Plattform ist. Unter Linux werden standardmäßig Paketverwaltungstools wie apt (dpkg/Debian-basiert) oder yum (rpm/RedHat-basiert) für die Installation verwendet. Sobald Sie ein Paket für die Erstellung bereitgestellt haben, ist das Erstellen eines Assistenten eine Zeitverschwendung, da die überwiegende Mehrheit der Benutzer das Paket ohnehin nur verwendet (als Standard).

Umgekehrt ist der Standard unter Windows eine GUI-basierte Installation. Es gibt sind Alternativen, jedoch ist keine dieser Alternativen als 100% iger Ersatz für einen Installateur geeignet:

  • Es gibt Paketverwaltungstools (wie Chocolatey , jedoch hat noch keine die kritische Masse erreicht. Wenn Sie nur eine auf Paketverwaltung basierende Installation bereitstellen, werden sich viele Benutzer darüber ärgern, dass sie eine andere installieren müssen Software, nur um Ihr Programm zu installieren (denken Sie daran, wie nervig Download-Manager sind). Die meisten Paketverwaltungstools richten sich auch an technische Benutzer. Wenn Ihre Software also nicht für diese Benutzerbasis vorgesehen ist, wird ein Paket für Chocolatey bereitgestellt eine völlige Zeitverschwendung zu sein, da niemand sie benutzen wird.
  • Einige Softwareprodukte sind für die XCopy-Bereitstellung geeignet, dies funktioniert jedoch nur für relativ einfache Softwareprodukte. Es ist gut für Benutzer, die auf einem Flash-Laufwerk installieren möchten (zum Beispiel), aber für alle anderen ist es ein Problem. Infolgedessen bieten viele Projekte, die Dateien für die XCopy-Installation freigeben, auch ein Installationsprogramm.
  • Chocolatey bietet ein Befehlszeilen-Snippet, mit dem die Installation heruntergeladen und ausgeführt wird. Auch wenn es schnell ist und für technische Benutzer gut funktioniert, werden nicht-technische Benutzer Schwierigkeiten haben und von dieser Installationsmethode abgeschreckt werden.

Wenn Ihre Software komplex genug ist, um eine Bereitstellung zu erfordern, ist es ziemlich obligatorisch, eine GUI-Installation bereitzustellen, wie es die Benutzer erwarten. Es gibt auch eine Reihe von Produkten, die das Erstellen dieser Assistenten ziemlich einfach machen. Daher ist die Bereitstellung eines GUI-basierten Installationsprogramms im Allgemeinen eine der Optionen mit dem geringsten Aufwand in Bezug auf die Entwicklungszeit. Sobald Sie ein GUI-basiertes Installationsprogramm haben, müssen Sie das Kosten-Nutzen-Verhältnis für jedes der oben genannten Verfahren bewerten (denken Sie daran, dass neue Funktionen mit minus 100 Punkten beginnen), und für viele Produkte lohnt es sich einfach nicht, diese Alternativen zu erstellen und zu warten.

Beachten Sie, dass Installationsprogramme mit einem "stillen" Modus unter Windows ziemlich häufig sind. Dies ist jedoch in der Regel nicht der Standardmodus - auch dies ist nicht der Standardmodus. Die meisten Windows-Benutzer würden ein Installationsprogramm finden, das sich sofort selbst installiert, sobald Sie es ausführen, was ziemlich beunruhigend ist.

0
Justin

Auf der technischen Seite tendiert Windows zu einer stärkeren Integration zwischen Programmen (über die Registrierung) als Linux. Dies erfordert einen offiziellen Installationsprozess, anstatt nur das Programm auf Ihre Festplatte zu kopieren (z. B. um Kontextmenüs zu aktivieren). Einige Betriebssysteme (z. B. Mac OS) erledigen dies teilweise hinter den Kulissen oder beim ersten Ausführen. Windows zieht es jedoch vor, dies als expliziten Bestandteil der Installation festzulegen.

Auf der nicht-technischen Seite bevorzugt Windows das Modell, es einzustellen und zu vergessen. Linux zum Beispiel hat normalerweise nicht so viele Einstellungen (Installationsoptionen), aber häufig verwenden Sie Flags, wenn Sie ein Programm ausführen - weil Sie es gewohnt sind; oder Sie ändern die Optionen, sobald Sie in einem Programm sind. Windows bevorzugt die Erfahrung mit festgelegten Optionen während einer festgelegten Zeit (Installation) und erwartet nicht, dass ein Benutzer bei jeder Programmausführung Befehlszeilenflags verwendet oder auf andere Weise Optionen festlegt. Dies verringert die Flexibilität (da Sie jedes Mal andere Flags verwenden können), obwohl dies häufig für Hauptbenutzer verfügbar ist (z. B. Optionen in einer Verknüpfung). bietet den meisten Benutzern jedoch eine einfachere Benutzeroberfläche und ermöglicht es dem Entwickler, den Benutzern eine saubere Benutzeroberfläche zum Festlegen der erforderlichen Optionen und Standardeinstellungen zu präsentieren.

0
Joe