นี่คือเหตุผลที่ฉันจำได้ว่าไม่ให้ UTF-8 หรือ Unicode อื่นแทนการเข้ารหัสอักขระเริ่มต้นสำหรับภาษาสคริปต์ Ruby ซึ่งพัฒนาขึ้นในญี่ปุ่นเป็นหลัก:
- เหตุผลที่ 1: ฮันผสมผสาน ชุดอักขระ (ไม่แน่ใจว่า "ตัวอักษร" จะถูกต้องตรงนี้หรือไม่) ที่ใช้กับประเทศจีนเกาหลีและญี่ปุ่นล้วนมีวิวัฒนาการมาจากประวัติศาสตร์ทั่วไปไม่แน่ใจเกี่ยวกับรายละเอียด กลุ่ม Unicode ตัดสินใจที่จะเสียรหัส Unicode เพียงจุดเดียวเพื่อเข้ารหัสสายพันธุ์ทั้งหมด (จีนญี่ปุ่นและเกาหลี) ของตัวละครเดียวกันในประวัติศาสตร์แม้ว่าลักษณะของพวกเขาจะแตกต่างกันใน 3 ภาษา เหตุผลของพวกเขาคือลักษณะที่ปรากฏควรถูกกำหนดโดยแบบอักษรที่ใช้เพื่อแสดงข้อความ
เห็นได้ชัดว่าเหตุผลนี้เป็นที่เข้าใจว่าเป็นเรื่องไร้สาระของผู้ใช้ภาษาญี่ปุ่นเพราะมันจะต้องเถียงกับผู้อ่านภาษาอังกฤษว่าเพราะตัวอักษรละตินได้พัฒนามาจากตัวอักษรกรีกก็เพียงพอแล้วที่จะมีเพียงจุดรหัสเดียวสำหรับกรีกอัลฟา " α "และละติน" a "และให้แบบอักษรที่ใช้งานตัดสิน (เหมือนกันสำหรับ "β" = "b", "γ" = "g" ฯลฯ )
(โปรดทราบว่าฉันจะไม่สามารถรวมอักขระกรีกที่นี่ใน stackexchange หากเป็นกรณีนี้)
- เหตุผลที่ 2: การแปลงอักขระที่ไม่มีประสิทธิภาพ
การแปลงอักขระจาก Unicode เป็นการเข้ารหัสภาษาญี่ปุ่นแบบดั้งเดิมและแบบหลังต้องใช้ตารางนั่นคือไม่มีการคำนวณอย่างง่ายจากค่าจุดรหัส Unicode เป็นค่าจุดรหัสแบบดั้งเดิมและในทางกลับกัน นอกจากนี้ยังมีการสูญเสียข้อมูลบางอย่างเมื่อแปลงเพราะไม่ใช่จุดรหัสในการเข้ารหัสหนึ่งทั้งหมดมีการแสดงที่ไม่ซ้ำกันในการเข้ารหัสอื่น ๆ
อาจมีอีกหลายเหตุผลที่ทำให้ฉันจำไม่ได้อีกแล้ว