เมื่อคุณดาวน์โหลดโปรแกรมใหม่สำหรับ Mac มันมักมาพร้อมไฟล์ ".dmg" ระบุตัวตนง่ายด้วยไอคอนดิสก์บนกระดาษ นามสกุล "dmg" ย่อมาจาก disk image เมื่อคุณดับเบิลคลิกที่ dmg มันจะ mount (หรือ붙ะอย่างถูกต้องคือ attach) เปิดเผยเนื้อหาใน Finder จากนั้นผู้ใช้ลากและวางเนื้อหาของ image ไปที่ไดเรกทอรี Applications เพื่อติดตั้งแอปใหม่บน Mac ของพวกเขา
กระบวนการนี้แตกต่างจากกระบวนการนำโดยติดตั้งของ Windows มาก และนำไปสู่การผจญภัยผิดๆ สำหรับผู้ใช้ macOS ใหม่ ตอนที่ผมย้ายจาก Windows ผมไม่มีความรู้เลยว่าขั้นตอนสุดท้ายนี้จำเป็น เพราะหลายโปรแกรมรันได้อย่างสมบูรณ์จาก disk image ของมัน และ disk images ไม่ได้อธิบายขั้นตอน "ลากไป Applications" เสมอไป ผลคือ ผมเปิด Firefox จาก disk image ประมาณหนึ่งเดือนจนกระทั่งผมตระหนักว่าไม่มีบุ๊กมาร์ค และไม่เข้าใจว่าทำไม
אז למהไฟล์ DMG จำเป็นสำหรับแอปพลิเคชันใหม่ และจุดของการ "mount" บางอย่างแค่เพื่อลากและวางไฟล์คืออะไร?
เหตุผลที่ 1: โครงสร้างแอปพลิเคชันของ Mac

ในขณะที่แอปพลิเคชัน Mac แสดงด้วยไอคอนที่น่ารักที่คุณดับเบิลคลิกเพื่อเปิดแอปพลิเคชัน ไอคอนนั้นซ่อนความลับไว้ ไฟล์ .app นั้นจริงๆ แทนแพ็กเกจ (package) นั่นคือโฟลเดอร์ที่มีไฟล์ทั้งหมดของแอปพลิเคชัน
ลองดูด้วยตัวเอง: คลิกขวาที่แอปพลิเคชันใดๆ ใน Finder และเลือก "Show Package Contents" เพื่อสำรวจด้วยตัวเอง เนื่องจากแอปพลิเคชัน macOS เป็นโฟลเดอร์ในแท้จริง พวกเขาจึงต้องการภาชนะบางอย่างเพื่อขนส่งไปยังคอมพิวเตอร์ใหม่โดยไม่สูญเสียไฟล์ การถ่ายโอนโฟลเดอร์เปลือยอาจเป็นเรื่องยุ่งยาก โดยเฉพาะข้ามเครือข่าย
มันเหมือนขนส่งไข่ 1 โหลโดยไม่มีกล่อง และสุดท้าย DMG กลายเป็นกล่องไข่ที่ดี למדי โดยปبع รูปแบบอื่นๆ สามารถใส่โฟลเดอร์ได้ แล้วอะไรทำให้ DMG คงอยู่ได้นาน?
เหตุผลที่ 2: การปรับแต่งความสวยงาม (Aesthetic Customization)

Disk images ยังเสนอประโยชน์ที่ไม่ซ้ำใคร: ความสามารถในการปรับแต่งลักษณะที่ปรากฏและประสบการณ์การติดตั้งของผู้ใช้ รวมถึงการตั้งคุณสมบัติอย่างไอคอนที่กำหนดเอง ตำแหน่งไอคอน และภาพพื้นหลัง
เมื่อคุณเปิด disk image และเห็นลูกศรแจ้งให้ลากแอปไปที่โฟลเดอร์ Applications คุณจริงๆ กำลังดูภาพพื้นหลังของ DMG นี่เป็นไปไม่ได้กับรูปแบบภาชนะอื่นๆ และนักพัฒนา macOS ระมัดระวังเรื่องการออกแบบภาพ ZIP archives สามารถเสนอการบีบอัดได้ แต่พวกเขาไม่สามารถเสนอ "ประสบการณ์การติดตั้ง" ระดับนี้ได้โดยไม่รันติดตั้งจริง แทนที่จะเป็นเช่นนั้น โปรแกรมแตกไฟล์ zip แค่วางไฟล์ลงในโฟลเดอร์ ให้นักพัฒนาควบคุมด้านความสวยงามน้อยมาก
เหตุผลที่ 3: Disk Images คล้าย CD
จำไว้ว่า disk images เป็นที่นิยม (และถูกนำมาใช้โดย Apple) ในยุคของสื่อจริง ในสมัยโบราณนั้น ผู้ใช้จะซื้อซอฟต์แวร์โดยเดินทางไปร้าน และซื้อกล่องที่มี CD ติดตั้งแอปพลิเคชัน พวกเขาจะใส่ CD ลงในไดรฟ์ CD และลากแอปพลิเคชันจาก CD ที่ "mounted" ไปที่โฟลเดอร์ Applications พวกเขาจะทำตามด้วยการขับ CD ออกและใส่กลับในกล่องเครื่องประดับสำหรับการติดตั้งในอนาคต
Disk image เลียนแบบกระบวนการนั้น ขี่บนพฤติกรรมผู้ใช้ที่คุ้นเคย Images ยังสามารถเป็น read-only (เหมือน CD) ได้ ป้องกันไม่ให้ผู้ใช้ทำลายหรือเปลี่ยนแปลงสำเนาที่ดีของแอปพลิเคชัน ผู้ใช้สามารถเก็บถาวร disk images รู้ว่าพวกเขาจะมีสำเนาที่ทำงานได้ของแอปเก็บไว้ในกรณีฉุกเฉิน
สรุป: ทางเลือกสมัยใหม่และ Package Installers

Disk images ยังคงใช้งานอย่างแพร่หลายแม้ในปัจจุบัน นอกจากประโยชน์ของพวกเขา DMGs ได้พัฒนาครุทประเพณีและความคาดหมาย ผู้ใช้คาดหวังซอฟต์แวร์ใหม่จะส่งมอบผ่าน DMG ดังนั้นนักพัฒนาจึงจัดหาในลักษณะนั้น แต่คุณจะพบ .app files เปลือยภายใน ZIP archives ที่กระจายอยู่ทั่วอินเทอร์เน็ตจำนวนสมเหตุสมผล นี่เป็นจริงโดยเฉพาะสำหรับแอปพลิเคชันจาก GitHub หรือนักพัฒนาขนาดเล็ก
คุณอาจเห็นแอปพลิเคชันมาในแพ็กเกจ (.pkg) พร้อมติดตั้งโปรแกรมบนบอร์ด นักพัฒนาใช้รูปแบบแพ็กเกจเมื่อแอปพลิเคชันต้องดำเนินการคำสั่งเมื่อเปิด มันมีประโยชน์โดยเฉพาะเมื่อโปรแกรมต้องคัดลอกไฟล์ไปยังไดเรกทอรีนอกเหนือจาก "/Applications" ตัวอย่างเช่น หากติดตั้งโปรแกรมต้องติดตั้งฟอนต์กำหนดเองหรือคัดลอกไฟล์ไปยังไดเรกทอรี Library รูปแบบแพ็กเกจสามารถทำได้ด้วยโปรแกรมติดตั้ง
หากคุณสนใจเรื่องนี้ทั้งหมด คุณสามารถอ่านประวัติของ disk image ได้