Kodokon kodokon.com

لماذا الشيفرة ليست سوى نص بسيط

اكتشف أن كل برنامج ليس إلا ملفًّا نصيًّا، ولماذا يغيّر ذلك طريقة عملك.

6 دقيقة · 3 أسئلة

افتح هذا الدرس في Kodokon

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

لكن مع تحفّظ واحد: نحن نتحدث عن النص الصِّرف، لا عن النص المُنسَّق. فعندما تكتب في Word أو LibreOffice أو Google Docs، يحتوي الملف على ما هو أكثر بكثير من حروفك: الخط، والحجم، والألوان، والهوامش، وكلها مخزّنة كتنسيق غير مرئي. أما ملف الشيفرة فلا يحتوي إلا على المحارف، بالترتيب، من دون ذرّة زينة. والألوان التي ستراها لاحقًا في محرّرك ليست في الملف: بل المحرّر هو من يضيفها على الشاشة، لمساعدتك.

TEXT
The real contents of the file index.html, character by character:

<h1>Hello</h1>
<p>My first page.</p>

Nothing else. No font, no color, no margin.
ملف الشيفرة لا يحتوي إلا على المحارف التي تكتبها.

فماذا عن الامتداد إذن، تلك اللاحقة الصغيرة بعد النقطة: .txt و.html و.py و.js؟ إنه ليس أكثر من بطاقة ملصوقة على الصندوق. لا يغيّر شيئًا في المحتوى. وهو موجود ليُخبر البرامج، ويُخبرك أنت، بما يُفترض أن يحتويه الملف. وإعادة تسمية photo.jpg إلى photo.txt لا تحوّل الصورة إلى نص: فالمحتوى لم يتغيّر، وحدها البطاقة كذبت. والعكس صحيح: النص نفسه محفوظًا باسم page.txt أو page.html هو الملف نفسه تمامًا، لكن متصفحك لن يعرضه كصفحة ويب إلا في الحالة الثانية.

ولكل هذا نتيجة أخرى: لا تكتب الشيفرة أبدًا في معالج نصوص. فـ Word وGoogle Docs يصحّحان ما تكتبه تلقائيًا، ويستبدلان تحديدًا علامات التنصيص المستقيمة بعلامات مطبعية منحنية أنيقة. بالنسبة إليك، الفرق غير مرئي. أما بالنسبة إلى الآلة، فهذان محرفان مختلفان تمامًا، وسيرفض برنامجك العمل ببساطة.

TEXT
What the machine expects   "hello"     straight quotes
What Word writes           “hello”     curly typographic quotes
Another common trap        'hello'  ->  ' turns into a curly apostrophe
محرفان يتشابهان ليسا المحرف نفسه.

اختبار المعرفة

تأكّد من أنك تذكّرت النقاط الأساسية في هذا الدرس.

  1. ماذا يحتوي ملف الشيفرة في الواقع؟
    • المحارف التي كتبتها فقط، من دون أي تنسيق
    • المحارف مع الألوان التي تُعرض بها
    • صيغة مضغوطة غير قابلة للقراءة من دون برنامج خاص
  2. ما فائدة امتداد الملف مثل .html؟
    • إخبارك بما يُفترض أن يحتويه الملف
    • ضغط محتوى الملف
    • حماية الملف من التعديلات
    • تغيير محتوى الملف
  3. لماذا لا ينبغي كتابة الشيفرة في Word؟
    • لأنه يستبدل بعض المحارف تلقائيًا، مثل علامات التنصيص
    • لأنه لا يستطيع حفظ الملفات
    • لأنه يحدّ من عدد الأسطر المسموح بها