Защо MacOS използва DMG файлове за нови приложения?
Когато изтегляте нова програма за вашия Mac, тя често идва с ".dmg" файл. Лесно се идентифицират чрез иконата на диск на хартия, разширението "dmg" означава изображение на диска. Когато кликнете два пъти върху dmg, той се монтира (или по-правилно се прикачва), като разкрива съдържанието му в Finder. Оттам, потребителите плъзват и пускат съдържанието на изображението в директорията на приложенията, за да инсталират нови приложения на Mac.
Този процес е много различен от процеса на инсталиране в Windows и може да доведе до нежелани събития за новите потребители на MacOS. Когато мигрирах от Windows, нямах представа, че тази последна стъпка е необходима. В края на краищата, много програми могат да работят перфектно от дисковото си изображение, а дисковите изображения не винаги обясняват стъпката "плъзгане към приложения". В резултат на това стартирах Firefox от изображението на диска за около месец, докато не осъзнах, че нямам никакви отметки и не мога да разбера защо.
Така че защо са необходими DMG файлове за нови приложения и какъв е смисълът да "монтирате" нещо само за плъзгане и пускане на файл?
Причина 1: Структурата на приложенията за Mac
Докато приложението за Mac е представено с привлекателна икона, на която кликнете два пъти, за да стартирате приложението, тази икона скрива тайна. Фактът .app представлява пакет. Това е по същество папка, съдържаща всички файлове на приложението.
Вижте сами: кликнете с десния бутон върху всяко приложение в Finder и изберете "Show Package Content", за да разгледате сами. Тъй като приложенията macOS са по същество папки, те се нуждаят от някакъв контейнер, за да ги транспортират до нови компютри, без да губят файлове. Прехвърлянето на гола папка може да е объркано, особено в мрежите.
Това е като да транспортирате дузина яйца без картон. И се оказва, че DMG прави доста добра кутия за яйца. Разбира се, други формати могат да съдържат папка; какво друго прави DMG толкова трайно?
Причина 2: Естетична персонализация
Дисковите изображения също така предлагат уникално предимство: възможността да персонализирате външния им вид и потребителския опит за инсталиране. Това включва настройка на функции като потребителски икони, позициониране на икони и фонови изображения.
Когато отворите изображение на диска и видите стрелка, която ви подканя да преместите приложението в папката "Приложения", всъщност гледате фоновото изображение на DMG. Това не е възможно при други формати на контейнери, а разработчиците на MacOS са чувствителни към визуалния дизайн. ZIP архивите могат да предлагат компресиране, но те не могат да предложат тази степен на "опит за инсталиране", без да работят с истински инсталатор. Вместо това, програмата за разкомпресиране просто пуска файлове в папка, като предлага на разработчика малко естетичен контрол.
Причина 3: Изображенията на диска са подобни на компактдисковете
Не забравяйте, че дисковите изображения станаха популярни (и бяха приети от Apple) в деня на физическите медии. В това древно време потребителите ще купуват софтуер, като пътуват до магазин и купуват кутия, съдържаща инсталационния компактдиск на приложението. След това те ще вмъкнат компактдиска в CD устройството си и ще плъзнат приложението от "монтирания" диск в папката Applications. Те щяха да последват това, като извадиха компактдиска и го пуснаха в бижуто си за бъдещи инсталации.
Изображението на диска имитира този процес, подкрепяйки познатото поведение на потребителите. Изображенията също могат да бъдат само за четене (точно като компактдиск), което възпрепятства потребителя да повреди или променя добре познатото копие на приложението. Потребителите могат да архивират дисковите изображения, знаейки, че в случай на извънредна ситуация ще разполагат с функционално копие на приложението.
Заключение: Съвременни алтернативи и инсталатори на пакети
Дисковите изображения все още използват много, дори и днес. Заедно с ползите от тях, DMG са разработили коричка от традиции и очаквания. Потребителите очакват нов софтуер да бъде доставен чрез DMG, така че разработчиците го предоставят по този начин. Но вие също ще намерите разумно количество голи файлове .app в пощенските архиви, разпръснати по Интернет. Това важи особено за приложения от GitHub или по-малки разработчици.
Може да видите, че приложенията идват в пакети (.pkg) с монтажни устройства на борда. Разработчиците използват формата на пакета, когато приложението трябва да изпълни инструкции при отваряне. Това е особено полезно, когато програмата трябва да копира файлове в директории извън "/ Applications". Например, ако инсталационната програма трябва да инсталира персонализирани шрифтове или да копира файлове в директорията на библиотеката, пакетен формат може да се осъществи с инсталатора.
Ако се интересувате от всичко това, можете да прочетете историята на дисковото изображение.