ที่มาของ DS_store (2006)
(arno.org)-
ที่มาของ DS_Store ของ Apple
-
หากคุณเป็นผู้ใช้ Mac หรือเคยโอนไฟล์จาก Mac ไปยัง Windows คุณน่าจะคุ้นเคยกับไฟล์
.DS_Store -
ที่มาของชื่อนี้ย้อนไปได้ถึงปี 1999
-
ในเวลานั้น ผู้เขียนเป็นผู้นำทางเทคนิคของ Finder บน Mac OS X ที่ Apple
-
โค้ดเบสของ Finder มีอายุ 8 ปีแล้ว และหมดอายุการใช้งานที่เป็นประโยชน์ไปแล้ว
-
การเปลี่ยนแปลงใด ๆ ต้องใช้ความพยายามด้านวิศวกรรมอย่างมหาศาล และเมื่อแก้ไขก็มักทำให้ฟีเจอร์ที่ไม่เกี่ยวข้องกันอีกสองหรือสามอย่างพังไปด้วย
-
จึงตัดสินใจเขียน Finder ขึ้นใหม่ทั้งหมดสำหรับ Mac OS X
-
ส่วนหนึ่งของงานคือการแยกส่วนติดต่อผู้ใช้ออกจากฟังก์ชันหลัก หรือก็คือแบ็กเอนด์
-
แบ็กเอนด์ของ Finder ทำหน้าที่ไล่รายการไฟล์ เฝ้าติดตามการเปลี่ยนแปลงของระบบไฟล์ และจัดการเมทาดาทา
-
ภายใน ทั้งสององค์ประกอบนี้ถูกเรียกว่า Finder_FE และ Finder_BE (Frontend และ Backend)
-
เขาตระหนักว่าแบ็กเอนด์ของ Finder น่าจะมีประโยชน์นอกเหนือจาก Finder ด้วย
-
จึงวางแผนให้มันเป็น public API
-
เนื่องจากก่อนหน้านี้เขาเป็นผู้ตั้งชื่อให้ Icon Services และ Navigation Services เขาจึงเลือกชื่อ Desktop Services
-
.DS_Storeย่อมาจาก "Desktop Services Store" -
มีการเติม "." ไว้ข้างหน้าเพื่อให้ถือเป็นไฟล์ที่ซ่อนอยู่ในระบบปฏิบัติการ Unix รวมถึง Mac OS
-
โดยส่วนตัวแล้ว เขาคิดว่าชื่อนี้ไม่ได้ดีนัก และน่าจะเลือกชื่อที่อธิบายได้ชัดเจนกว่านี้
-
บั๊กที่ทำให้เกิดการสร้างไฟล์
.DS_Storeมากเกินไปยังไม่ถูกแก้จนถึงทุกวันนี้ -
มันควรถูกสร้างขึ้นเฉพาะเมื่อผู้ใช้ปรับการตั้งค่ามุมมอง หรือกำหนดตำแหน่งไอคอนแบบแมนนวลในโฟลเดอร์เท่านั้น
-
แต่ในความเป็นจริง เพียงแค่เข้าไปที่โฟลเดอร์ก็แทบจะการันตีได้ว่าไฟล์
.DS_Storeจะถูกสร้างขึ้น -
Finder_BE หรือ Desktop Services ถูกใช้นอกเหนือจาก Finder ด้วย
-
Navigation Services (กล่องโต้ตอบเปิด/บันทึก) ก็ใช้งานสิ่งนี้เช่นกัน
-
อย่างไรก็ตาม Desktop Services API ก็ยังไม่ได้ถูกเปิดเผยอย่างสมบูรณ์
- เผยแพร่เมื่อ 1 ตุลาคม 2006
- เขียนโดย Arno Gourdol
ความเห็นของ GN⁺
- บทความนี้ให้ภูมิหลังเชิงเทคนิคโดยอธิบายประวัติของ Finder บน Mac OS X และที่มาของไฟล์
.DS_Store - ปัญหาการสร้างไฟล์
.DS_Storeมากเกินไปยังคงไม่ได้รับการแก้ไข และอาจส่งผลต่อประสบการณ์ผู้ใช้ - ความสามารถในการนำแบ็กเอนด์ของ Finder ไปใช้ซ้ำ แสดงให้เห็นปรัชญาการออกแบบซอฟต์แวร์ของ Apple
- เครื่องมือจัดการระบบไฟล์อื่นที่มีฟังก์ชันคล้ายกัน ได้แก่ NTFS ของ Windows และ ext4 ของ Linux
- เมื่อนำเทคโนโลยีใหม่หรือโอเพนซอร์สมาใช้ ควรพิจารณาปัญหาความเข้ากันได้กับระบบเดิมและการบำรุงรักษา
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
แนวคิดเรื่อง "fork" ของระบบไฟล์ Mac หมายความว่ามีองค์ประกอบ resource และ data อยู่เป็นคู่กัน
เคยมีวิธีปิดการสร้างไฟล์ .DS_Store แต่ถูกถอดออกไปแล้ว
ไม่เข้าใจว่าทำไมไฟล์ .DS_Store ต้องอยู่ในโฟลเดอร์เดียวกัน
ไฟล์ .DS_Store ควรถูกสร้างก็ต่อเมื่อผู้ใช้ปรับการตั้งค่ามุมมองของโฟลเดอร์หรือกำหนดตำแหน่งไอคอนด้วยตนเองเท่านั้น
ตั้งแต่ปี 1999 แอปก็ถูกแยกเป็นฟรอนต์เอนด์และแบ็กเอนด์แล้ว
ควรกล่าวถึงว่าสามารถปิดการสร้างไฟล์ .DS_Store ระหว่างการท่อง network volume ได้โดยค่าเริ่มต้น
ทุกครั้งที่เห็นไฟล์ .DS_Store ก็จะนึกถึง Nintendo DS
ถ้าไม่ใช่ผู้ใช้ Mac การดาวน์โหลดไฟล์ .tgz จาก Github แล้วมีไฟล์ .DS_Store รวมมาด้วยก็ค่อนข้างน่ารำคาญ
เป็นแฟนตัวยงของ MacOS แต่ Finder เป็นหนึ่งในตัวสำรวจไฟล์ที่งี่เง่าที่สุด
ไฟล์ DS Store เป็นสิ่งที่มีอยู่อย่างน่าเสียดาย