Ich habe gerade angefangen, einen Mac für die iOS-Entwicklung zu verwenden, der aus zwei Jahrzehnten Windows-Nutzung stammt, und ich bin erstaunt und verwirrt, dass es keinen Installationsprozess für Mac-Programme gibt ... Sie laden sie einfach herunter, öffnen die DMG, Kopieren Sie die Datei rüber, und voilà.
Das verwirrt mich ohne Ende.
Kann jemand auf technischer Ebene erklären, was der Unterschied ist? Wie könnte es denkbar sein, dass kein Installationsprozess durchgeführt werden muss?
Und wenn so etwas möglich ist, warum funktionieren dann nicht alle Betriebssysteme so?
Uns Mac-Nutzer stellen die gleiche Frage andersherum: Warum braucht man für alles in Windows einen (De-)Installer?
Die meisten Mac-Programme sind vollständige Bundles – alle ihre Ressourcen befinden sich im Anwendungsordner (Rechtsklick auf das App-Symbol -> Paketinhalt anzeigen). Damit sie von überall ausgeführt werden können, gibt es eine Systemvariable, die dem Code mitteilt, wo er sich befindet. Häufig kann eine Anwendung direkt von der heruntergeladenen DMG und sogar von einem Remote-Server ausgeführt werden. Ein kleiner Performance-Hit, aber es wird funktionieren. Benutzereinstellungen befinden sich in der Benutzerbibliothek, es gibt auch Systemroutinen, um die Mechanik zu handhaben.
Macs haben keine zentrale Registrierung, die eingerichtet (oder gewartet) werden muss, also muss auch nichts dorthin gehen.
Wenn Sie Mac-Anwendungen entwickeln, sollten Sie sich sehr bemühen, kein Installationsprogramm zu benötigen - nur wenn Sie gemeinsam genutzte Bibliotheken oder Dienste auf Shell-Ebene installieren. Generell geht es auch ohne.
Da Sie sich der iOS-Programmierung zuwenden, würde ich vorschlagen, sich darüber keine Gedanken zu machen. iOS-Regeln sagen Ihnen, wo Sie was speichern können, und es ist NICHT verhandelbar. Einstellungen kommen hierher, Benutzerdaten dort. Sie verwenden die bereitgestellten APIs. Erfüllen. Gehorchen.
Tatsächlich gibt es unter OS X eine Menge Dinge, die "installiert" werden müssen.
Normalerweise handelt es sich bei den „installierten“ Apps um Pakete, die bestimmte Anweisungen enthalten. Um es einfach auszudrücken, das Paket führt ein Skript aus und weist das System an, Dateien in verschiedenen Teilen des Betriebssystems zu erstellen/zu verschieben. Dies ist für Software wie die Adobe CS-Suite oder Microsoft Office erforderlich.
Die andere Art von Apps sind so etwas wie "Standalone-Apps", bei denen Sie nur eine ausführbare Datei benötigen. Wenn diese Datei geöffnet wird, erstellt sie dann ihre Abhängigkeiten, Einstellungsdateien und dergleichen.
In vielen Fällen tut ein Windows-Installer eigentlich nichts anderes, als die komprimierten Dateien zu extrahieren und sie an das Ziel zu schreiben.
Und dann erstellt es ein paar Verknüpfungen und registriert sich möglicherweise selbst, um Dateien mit bestimmten Erweiterungen zu öffnen.
Es ist keine Hexerei, Software unter Windows zu installieren, und für viele Windows-Software können Sie tatsächlich das installierte Softwareverzeichnis nehmen und es direkt auf einen anderen Computer kopieren und dort ausführen, ohne eine (Neu-)Installation durchzuführen.
Es handelt sich also hauptsächlich um einen Unterschied zwischen Benutzeroberflächen (wer für das Kopieren der Dateien verantwortlich ist), nicht um einen Unterschied zwischen dem, was wirklich passiert.
Falscher Name
*.app
Ordners auf Ihre lokale Festplatte Dateiaktionen auslösen kann. Außerdemnnn.app
ist das ein Ordner , keine Datei. Wie Mac-Apps funktionieren, ist ziemlich kompliziert.Kris Harper