Reverse Domain Notationมีต้นกำเนิดใน Java แต่มีการใช้กันอย่างแพร่หลายในหลาย ๆ แพลตฟอร์มเช่นแพคเกจ Android, แพ็คเกจ Mac OS X, JavaScript, ActionScript และอื่น ๆ
การปฏิบัตินี้มีประโยชน์อย่างยิ่งเพราะเป็นระบบกระจายอำนาจสำหรับซอฟต์แวร์กำหนดชื่อ ไม่จำเป็นต้องใช้กับหน่วยงานส่วนกลางสำหรับเนมสเปซ เพียงใช้ชื่อโดเมนที่คุณเป็นเจ้าของ (กลับรายการ) และจัดการภายในองค์กรของคุณเอง ด้วยการตั้งชื่อแพ็คเกจเช่นนี้สามารถมั่นใจได้ว่ารหัสจะไม่ขัดแย้งกับแพ็คเกจอื่น ๆ
จากบทแนะนำ Java ของ Oracle :
บริษัท ต่างๆใช้ชื่อโดเมนอินเทอร์เน็ตที่กลับด้านเพื่อเริ่มต้นชื่อแพ็คเกจเช่น com.example.mypackage สำหรับแพ็คเกจชื่อ mypackage ที่สร้างโดยโปรแกรมเมอร์ที่ example.com
การชนกันของชื่อที่เกิดขึ้นภายใน บริษัท เดียวจะต้องได้รับการจัดการโดยการประชุมภายใน บริษัท นั้นอาจรวมถึงภูมิภาคหรือชื่อโครงการหลังจากชื่อ บริษัท (ตัวอย่างเช่น com.example.region.mypackage)
มันเป็นมากกว่าแบบฝึกหัดการฝึกฝนที่ดีเพราะเป็นเนมสเปซที่สมบูรณ์และเฉพาะเจาะจง หากมีสอง บริษัท ชื่อAcmeและทั้งสองเลือกเนมสเปซacme.
รหัสของพวกเขาจะขัดแย้งกัน แต่มีเพียงหนึ่งใน บริษัท เหล่านั้นเท่านั้นที่สามารถเป็นเจ้าของacme.comโดเมนเพื่อให้พวกเขาได้ใช้com.acme.
เนมสเปซ
การย้อนกลับชื่อโดเมนจะอนุญาตให้ใช้สถาปัตยกรรมด้านบนลงล่าง com
จะมีรหัสสำหรับ บริษัท (หรือใครก็ตามที่เป็นเจ้าของชื่อโดเมน. com) และภายใต้ชื่อ บริษัท (โดเมน) จากนั้นลึกลงไปในนั้นจะเป็นโครงสร้างขององค์กรและ / หรือเนมสเปซจริง (ตัวอย่างเช่นถ้ามันเป็นรหัสจากเครือข่ายที่เรียกว่าinternal.acme.comซึ่งให้แผนกนี้เป็นชื่อย่อยของตัวเองcom.acme
) โครงสร้างจากบนลงล่างนี้ใช้ในแอปพลิเคชั่นจำนวนมากรวมถึงในการบริหารระบบ (คล้ายกับการค้นหาที่อยู่ IP ย้อนกลับ)
ส่วนตัวผมใช้มันสำหรับรหัส JavaScript ใหม่ทั้งหมดที่ฉันเขียนให้กับ บริษัท ของฉัน เป็นการรับรองว่ารหัสจะไม่ขัดแย้งกับรหัสอื่นแม้ว่าฉันจะเขียนรหัสเดียวกันสำหรับ บริษัท อื่นในภายหลัง มันสามารถทำให้การเข้าถึงโค้ดยุ่งยาก (การพิมพ์com.digitalfruition.
ทำได้ค่อนข้างมาก) แต่สามารถแก้ไขได้อย่างง่ายดายด้วยการปิดและตัวแปรโลคอล ( var DF = com.digitalfruition
)