يونيكود 101

مؤلف: Judy Howell
تاريخ الخلق: 26 تموز 2021
تاريخ التحديث: 12 قد 2024
Anonim
Unicode 101
فيديو: Unicode 101

المحتوى



يبعد:

إذا كنت تريد أن تكون تطبيقاتك عالمية حقًا ، فيجب أن تكون قادرًا على التعامل مع لغات أخرى غير الإنجليزية الأمريكية. يوفر Unicode وسيلة غير مؤلمة نسبيا للقيام بذلك.

إذا لاحظت ذلك ، فهناك عالم كامل خارج الولايات المتحدة. لسوء الحظ ، يمكن أن يمثل تمثيل بلغات مختلفة تحديا للمبرمجين. Unicode هو معيار عالمي للتمثيل يجعل من السهل دعم أي لغة تقريبًا. هنا نلقي نظرة على أساسيات يونيكود.

ما هو يونيكود؟

إذا كنت على دراية بالتفاصيل الفنية لكيفية تخزينها في جهاز كمبيوتر وكنت متحدثًا باللغة الإنجليزية ، فمن المحتمل أنك سمعت عن ASCII ، الكود القياسي الأمريكي لتبادل المعلومات. يقوم ASCII بتخطيط البايتات للأرقام والحروف والرموز المختلفة وشخصيات التحكم ، والتي تقوم بأشياء مثل تنبيه صوت مكبر صوت الكمبيوتر أو الإشارة إلى بداية السطر الجديد. لقد كانت موجودة إلى الأبد وهي تعمل بشكل رائع - إذا كانت لغتك الأساسية هي الإنجليزية الأمريكية.

ومع ذلك ، فإن العديد من مستخدمي الكمبيوتر في جميع أنحاء العالم يتحدثون بلغات أخرى ، والكثير منها يتقارب حتى الإنجليزية. إذا كنت مطورًا ولم يأخذ برنامجك هذا في الاعتبار ، فقد يكون لديك بعض الصداع الحقيقي.


يروي جويل سبولسكي ، مهندس البرمجيات والكاتب ، ما يمكن أن يحدث إذا كان المبرمجون قلقين بشأن اللغات:

"قبل عامين ، كان اختبار تجريبي لـ FogBUGZ يتساءل عما إذا كان يمكن التعامل مع الوارد باللغة اليابانية. اليابانية؟ لديهم اليابانية؟ ليس لدي أي فكرة. عندما نظرت عن كثب في عنصر تحكم ActiveX التجاري الذي كنا نستخدمه لتحليل MIME s لقد اكتشفنا أنه كان يفعل الشيء الخطأ تمامًا باستخدام مجموعات الأحرف ، لذلك كان علينا في الواقع كتابة شفرة بطولية للتراجع عن التحويل الخاطئ الذي قامت به وإعادته بشكل صحيح. عندما نظرت إلى مكتبة تجارية أخرى ، كان لديها أيضًا تطبيق رمز الحرف المكسور. لقد تحدثت مع مطور تلك الحزمة وكان يعتقد أنه لا يمكنهم فعل أي شيء حيال ذلك. مثل العديد من المبرمجين ، تمنى لو أن كل ذلك سوف يتفجر بطريقة ما. "إذا كنت تعرف Unicode ، فيمكنك بناء التطبيقات التي سوف تكون قادرة على العمل مع لغات أخرى بكل سهولة. Unicode هو اتحاد دولي يسعى جاهداً لإصدار مجموعة أحرف عالمية حقيقية تجعل من الممكن تطوير برامج عالمية حقيقية. وصفه عالم الكمبيوتر دونالد إ. نوث بأنه أفضل أداة أعرفها للمساعدة في تحقيق التفاهم بين الناس من ثقافات مختلفة. "

لذلك في Unicode ، يتم تمثيل الأحرف كـ "نقاط رمز" بدلاً من وحدات البايت ، والتي يتم استخلاصها من الطريقة التي تم تخزينها بها فعليًا في جهاز الكمبيوتر. يمثل معيار Unicode الحروف والأرقام ورموز العملة واتجاه الكتابة (لتمثيل اللغات التي تقرأ من اليمين إلى اليسار مثل اليابانية والعبرية والعربية).


تاريخ يونيكود

كما ذكرنا سابقًا ، كان ASCII موجودًا لفترة طويلة. بينما يترجم الأحرف إلى بايت ، فإنه يستخدم فقط سبعة بت في كل بايت بدلاً من الثمانية المعتادة. في الوقت نفسه ، فإن انتشار أجهزة الكمبيوتر في جميع أنحاء العالم جعل من الضروري تمثيل لغات مختلفة. تمديد ASCII باستخدام بت إضافي بدا الحل الأكثر وضوحا. تكمن المشكلة في أن كل شركة وبلد قاموا بتوسيعها بطريقة مختلفة ، مما يجعل من المستحيل تقريبًا تبادل البيانات مع أشخاص يستخدمون لغات مختلفة.

في أواخر الثمانينيات ، قرر بعض الموظفين في Apple و Xerox التعاون معًا لحل المشكلة وتطوير طريقة لتمثيل كل لغة على الأرض. وسرعان ما انضم إليهم أشخاص من Sun Microsystems و IBM لتشكيل Unicode Consortium. تم إصدار الإصدار الأول من المعيار في عام 1991 ، وتم تحسينه باستمرار. تقريبا جميع البرامج التي تتعامل تقريبا مع جميع أنظمة التشغيل الحديثة تدعم Unicode.

UTF-8 ، UTF-16 ، UTF-32

نظرًا لأن Unicode موجود في كل مكان هذه الأيام ، فمن السهل جدًا إضافة دعم لتطبيقك. فقط راجع الوثائق الخاصة بلغة البرمجة المفضلة لديك.

No Bugs، No Stress - دليلك خطوة بخطوة لإنشاء برامج تغيير الحياة دون تدمير حياتك


لا يمكنك تحسين مهارات البرمجة لديك عندما لا يهتم أحد بجودة البرنامج.

يونيكود يأتي في ثلاث نكهات:

  • UTF-8
  • UTF-16
  • UTF-32

تشير الأرقام إلى عدد البتات التي يتم فيها تخزين الأحرف. على سبيل المثال ، يقوم UTF-8 بتخزين الأحرف في بايت 8 بت. كما أنه متوافق أيضًا مع ASCII ، ويستخدم على نطاق واسع جدًا على الويب لأنه يمكن التعامل مع الأجانب والبقاء مضغوطين. يستخدم UTF-16 16 بت لتخزين الأحرف ، ويوفر توازنًا جيدًا بين سعة التخزين المدمجة والقدرة على الوصول إلى الأحرف. يعد UTF-32 مثاليًا عندما لا داعي للقلق بشأن مساحة التخزين.

لماذا يونيكود؟

هناك سبب يسمونه الشبكة العالمية. لها أن تصبح متاحة عالميا تقريبا. وإذا كنت مطورًا ، فإنه يدفع للوصول إلى جمهور عالمي. وهذا يعني تمثيل في الطريقة الحديثة. يضعها Spolsky بشكل أكثر صراحة:

"كل هذه الأشياء حول عادي = ASCII = الأحرف من ثماني بتات ليس خطأ فحسب ، بل خطأ يائس ، وإذا كنت لا تزال البرمجة بهذه الطريقة ، فأنت لست أفضل بكثير من الطبيب الذي لا يؤمن بالجراثيم."

Unicode مقابل ASCII

منذ ASCII هو الحد الأدنى الذي تدعمه أجهزة الكمبيوتر ، فإنه لن يذهب بعيدا. إذا كنت متأكدًا تمامًا وإيجابيًا من أن التطبيق الخاص بك سيتم استخدامه فقط في العالم الناطق باللغة الإنجليزية ، فقد تتمكن من التخلص منه. ولكن على الرغم من أن الكثير من الأجانب يتعلمون اللغة الإنجليزية على أي حال ، إلا أنك لا تزال أفضل حالًا في استخدام Unicode ، حيث إنها أكثر مرونة من ASCII. أيضًا ، قد لا تعرف أبدًا متى قد يرغب المستخدمون لديك في كتابة رمز أو أحرف Euro مع لهجات.

معيار عالمي

إذا كنت تريد أن تكون تطبيقاتك عالمية حقًا ، فيجب أن تكون قادرًا على التعامل مع لغات أخرى غير الإنجليزية الأمريكية. لحسن الحظ ، يوفر Unicode وسيلة غير مؤلمة نسبيا للقيام بذلك. لماذا لا تبدأ عولمة برنامجك الآن؟