Hvorfor bruker macOS DMG-filer til nye applikasjoner?
Når du laster ned et nytt program for Mac, kommer det ofte med en ". Dmg" -fil. Enkel å identifisere av deres disk-på-papir-ikon, står "dmg" -utvidelsen for diskbilde. Når du dobbeltklikker på dmg, monteres den (eller, mer riktig, festes), og avslører innholdet i Finder. Derfra drar brukere og drar bildeinnholdet i Programmer-katalogen for å installere nye apper på sine Mac-maskiner.
Denne prosessen er svært forskjellig fra Windows-installasjonsprosessprosessen, og kan føre til misadventures for nye macOS-brukere. Da jeg migrerte fra Windows, hadde jeg ingen anelse om at dette siste skrittet var nødvendig. Tross alt kan mange programmer løpe perfekt fra deres disk image, og diskbilder forklarer ikke alltid "dra til programmer" -trinnet. Som et resultat, lanserte jeg Firefox fra diskbildet i omtrent en måned til jeg skjønte at jeg ikke hadde noen bokmerker og ikke kunne forstå hvorfor.
Så hvorfor er DMG-filer nødvendige for nye applikasjoner, og hva er poenget med å "montere" noe bare for å dra og slippe en fil?
Årsak 1: Mac-applikasjonsstrukturen
Mens et Mac-program er representert av et attraktivt ikon som du dobbeltklikker for å starte programmet, skjuler det ikonet en hemmelighet. At .app-filen representerer faktisk en pakke. Det er egentlig en mappe som inneholder alle programmets filer.
Se for deg selv: høyreklikk på et hvilket som helst program i Finder og velg "Vis pakkeinnhold" for å utforske på egenhånd. Fordi macOS-applikasjoner er hovedsakelig mapper, trenger de en slags beholder for å transportere dem til nye datamaskiner uten å miste filer. Overføring av en naken mappe kan være rotete, spesielt på tvers av nettverk.
Det er som å transportere et dusin egg uten en kartong. Og det viser seg at DMG gjør et ganske godt egg kartong. Selvfølgelig kan andre formater holde en mappe; hva mer gjør DMG så varig?
Årsak 2: Estetisk tilpasning
Diskbilder gir også en unik fordel: muligheten til å tilpasse utseendet og brukerens installasjonsopplevelse. Dette inkluderer innstillingsfunksjoner som egendefinerte ikoner, ikonposisjonering og bakgrunnsbilder.
Når du åpner et diskbilde og ser en pil som ber deg om å dra appen til mappen Programmer, ser du faktisk på bakgrunnsbildet til DMG. Dette er ikke mulig med andre containerformater, og macOS utviklere er følsomme for visuell design. ZIP arkiver kan tilby komprimering, men de kan ikke tilby denne graden av "installasjonserfaring" uten å kjøre en faktisk installatør. I stedet slipper unzipping programmet bare filer i en mappe, og tilbyr utvikleren liten estetisk kontroll.
Årsak 3: Diskbilder ligner på CDer
Husk at diskbilder ble populære (og ble vedtatt av Apple) i dag med fysiske medier. I den gamle tiden ville brukerne kjøpe programvare ved å reise til en butikk og kjøpe en boks som inneholder en applikasjons installasjons-CD. De ville da sette inn CDen i CD-stasjonen og dra programmet fra den "monterte" CDen til Programmer-mappen. De ville følge dette ved å kaste ut CD-en og sette den tilbake i sitt juvel tilfelle for fremtidige installasjoner.
Diskbildet etterligner den prosessen, piggy-backing på en kjent brukeradferd. Bilder kan også være skrivebeskyttet (akkurat som en CD), og forhindrer brukeren i å skade eller endre den kjente gode kopien av programmet. Brukere kan arkivere diskbilder, ved å vite at de vil ha en funksjonell kopi av appen som er borte i nødstilfelle.
Konklusjon: Moderne alternativer og pakkeinstallatører
Diskbilder ser fortsatt mye ut, selv i dag. Sammen med deres fordeler har DMGer utviklet en skare av tradisjon og forventning. Brukere forventer at ny programvare skal leveres via DMG, slik at utviklere gir den den måten. Men du finner også en rimelig mengde bare .app-filer i ZIP-arkiver spredt over Internett. Dette gjelder spesielt for applikasjoner fra GitHub eller mindre utviklere.
Du kan også se at applikasjoner kommer i pakker (.pkg) med installatører om bord. Utviklere bruker pakkeformatet når søknaden må utføre instruksjoner ved åpning. Det er spesielt nyttig når programmet må kopiere filer til kataloger utenfor "/ Applications." Hvis installasjonsprogrammet for eksempel trenger å installere egendefinerte skrifttyper eller kopiere filer til bibliotekskatalogen, kan et pakkeformat oppnå det med et installasjonsprogram.
Hvis du er interessert i alt dette, kan du lese om historien til diskbildet.