الكود البرمجي Source Code كود المصدر
"الكود البرمجي Source Code أو كود المصدر أو شفرة مصدرية" قائمة من النصوص التي يمكن قراءتها من قبل الإنسان مكتوب بلغة معينة. الهدف من "الكود البرمجي" هو وضع القواعد والمواصفات الدقيقة للكمبيوتر التي يمكن ترجمتها إلى لغة الجهاز. والتي يكتبها المبرمج غالبًا في برنامج معالجة الكلمات يتم تشغيل "كود المصدر" من خلال مترجم لتحويله إلى رمز آلي يُطلق عليه أيضًا رمز الكائن. والذي يمكن software فهمه وتنفيذه يتكون الكود البرمجي بشكل أساسي من 1 و 0 لذا فهو غير قابل للقراءة من قبل الإنسان. فإن "الكود البرمجي" هو اساس البرامج والمواقع الإلكترونية.
ماهي شفرة الكود البرمجي
علميآ تعمل الأجهزة الحديثة في النظام الثنائي : تشغيل / إيقاف 1/0. تسلسل البتات يوجه الكمبيوتر إلى ما يجب أن يفعله. بينما تم إنشاء الأوامر بهذه الطريقة في الأيام الأولى لتكنولوجيا الكمبيوتر software فقد تحولنا منذ فترة طويلة إلى كتابة التطبيقات بلغة يمكن للبشر قراءتها. قد يبدو هذا غريبًا في البداية لأن "شفرة المصدر" قد تبدو أيضًا مثل رطانة مشوشة لشخص عادي شاهد كيفية تعلم البرمجه للمبتدئين.
في السياق يُفهم يمكن للبشر قراءته على أنه النظير لمصطلح مقروء آليًا. بينما تعمل أجهزة الكمبيوتر software مع القيم الرقمية فقط يتواصل البشر بالكلمات. تمامًا مثل اللغة الأجنبية كما يجب على المرء تعلم واحدة على الأقل من اللغات البرمجية المختلفة قبل التمكن من البرمجة .
يوجد المئات من لغات البرمجة المختلفة من المستحيل أن نقول على أيهما أفضل أو أسوأ لأنه يعتمد على سياق المشروع والتطبيق الذي يتم استخدام Code المصدر من أجله بعض اللغات الأكثر شيوعًا هي:
basic
java
c
c plus plus
Pascal
Python
php
javascript
لكي يفهم الكمبيوتر هذه اللغات يجب أولا ترجمتها إلى رمز الآلة وترجمة أكواد البرمجة.
مترجم الكود البرمجي
لكي يتمكن الكمبيوترsoftware من معالجة العمليات البرمجية المصدر التي كتبها المبرمج بشكل أكبر يجب أن تكون هناك ترجمة بين الاثنين - يحدث هذا في شكل برنامج إضافي يمكن أن يكون طلب المساعدة هذا إما في شكل مترجم .
مترجم: هذا النوع من التطبيقات يترجم (يجمع) الكود البرمجي code إلى كود تفهمه العملية كود برمجي بسيط، ويمكن تنفيذه. يتم حفظ رمز الجهاز هذا في شكل ملف قابل للتنفيذ.
مترجم فوري: يترجم سطر الكود البرمجي للخط وينفذه مباشرة. تكون عملية الترجمة أسرع بكثير من المترجم ولكن التنفيذ يكون أبطأ ويتطلب قدرًا كبيرًا من الذاكرة.
تحدد كل لغة برمجة ما إذا كان سيتم استخدام مترجم في تركيبة معها. في الوقت الحاضر يتم استخدام حل وسيط بشكل متزايد - التجميع في الوقت المناسب (JIT). يحول هذا النوع من الترجمة الجمع بين مزايا كلا المتغيرين (التحليل والتنفيذ السريع) ويستخدم في المتصفحات على سبيل المثال للتعامل بشكل أكثر فعالية مع JavaScript أو PHP أو Java.
يُشار أيضًا إلى تأسيس موقع الويب على أنه رمز المصدر Code. فهذه ليست حالة لغة برمجة بل لغة ترميز HTML . تحدد لغة الترميز كيفية بناء المحتوى. يتيح لك استخدام HTML تحديد العناوين الرئيسية أو الفقرات أو الإبرازات. مستند HTML ليس برنامجًا في حد ذاته ولكنه قد يحتوي على واحد كود برمجي html. مثل في شكل كود JavaScript ينطبق مبدأ مشابه على لغات الترميز الأخرى مثل XML.
هيكل نص الكود
اعتمادًا على لغة البرمجة المعنية فأنت مقيد باتفاقيات معينة عند كتابة برنامج. يظهر عدد قليل جدًا من لغات البرمجة ومعظمها يعتمد على بعضها البعض كتاب اكواد البرمجة. لهذا السبب يتم استخدام بعض العناصر في الكود البرمجي Source Code مختلفة.
- الاوامر: هي كقاعدة أساسية لجميع التطبيقات. يوضح المبرمج لبرنامجهم المستقبلي ما يجب القيام به. يمكن لمثل هذه الأوامر تشغيل حسابات معينة أو عرض نص.
- المتغيرات: المتغيرات هي الوظائف الشاغرة التي يمكن ملؤها بالمعلومات. تتم الإشارة إلى هذه داخل شفرة المصدر مرارًا وتكرارًا باسم معين.
- المقارنات: تم بناء هيكل معظم البرامج من خلال الاستعلامات التي تعمل على مخطط if-then ، أي مبدأ المنطق الافتراضي. إذا تم إدخال قيمة حقيقة معينة فسيتم تشغيل أحد الحلول بدلا من الآخر.
- الحلقات التكرارية : يمكن أن تكون الاستعلامات أيضًا أساس الحلقات في التعليمات البرمجية المصدر. يتم تكرار الأمر حتى يتم الوصول إلى قيمة معينة. عندما ينهي البرنامج الحلقة ويقوم بتشغيل باقي الكود.
- التعليقات: في جميع لغات البرمجة الشائعة يمكنك التعليق على الأسطر داخل الكود البرمجي code. هذا يجعل من الممكن كتابة نص في كود المصدرsource لا يأخذ في الاعتبار من قبل البرنامج. يتم إدخال التعليقات في التعليمات البرمجية المصدر على سبيل المثال حتى تتمكن أنت أو مطور آخر من متابعة وفهم أجزاء من الكود في المستقبل.
مع كتابة الكود البرمجي هناك دائمًا مشكلة يجب حلها. يكتب المطورون برامج لتقديم الحلول . ومع ذلك فإن طريقة القيام بذلك ليست ثابتة. عندما يتعامل اثنان من المبرمجين مع نفس المشكلة فمن المحتمل أن يكون كود المصدر الناتج مختلفين تمامًا عن بعضهما البعض - حتى لو كانا يعملان بنفس اللغة.
على الرغم من عدم وجود إجابة واحدة صحيحة في كثير من الحالات إلا أن جميع أعمال البرمجة تشترك في شيء واحد "شفرة مصدرية" الجيدة تتجنب النص غير الضروري. يجعل النص الإضافي المشكلة مربكة وأبطأ وأكثر عرضة للأخطاء. يُشار إلى شفرة مصدرية المربكة بشكل خاص والتي لا يستطيع المحترفون قراءتها باسم رمز السباغيتي نظرًا لأن الهيكل قد يكون متشابكًا مثل المعكرونة المتدلية على طبق.
كتابة الكود البرمجي Code
كتابة الكود البرمجي كل ما تحتاجه هو محرر نصوص بسيط مثل Notepad على Windows او TextEdit على Mac. بهذه الطريقة يمكن حفظ كود المصدر كنص عادي (على سبيل المثال في ترميز ASCII أو مع ترميز UTF-8) مع انتهاء اسم الملف الصحيح للغة البرمجة. لذلك إذا وجدت ملفًا بنهاية ".cpp" على محرك الأقراص الثابتة فهو في الواقع ملف نصي يحتوي على الأرجح على رمز لغة البرمجة C ++.
ملحقات اسم الملف هي الاصطلاحات. اللاحقة التي يتم فصلها عادةً عن اسم الملف المرفق بنقطة يُقصد بها الإشارة إلى تنسيق الملف. يستخدم Windows نهاية الملف - إذا كان معروفًا - لتحديد البرنامج الذي سيتم تشغيل الملف المقابل معه. تقوم أنظمة التشغيل الأخرى التي تعتمد على Unix (مثل macOS) بمراجعة محتوى الملف لتحديد التنسيق.بالإضافة إلى البرامج القياسية لنظام التشغيل هناك أيضًا برامج تحرير نصية متقدمة تعمل على تبسيط عمل الكود البرمجي من خلال وظائف مختلفة:
- تمييز الجملة: تستخدم كل لغة برمجة تركيبها الخاص. في العديد من برامج تحرير النصوص تقوم أولا بتحديد لغة البرمجة التي تريد إنشاء كود المصدر بها ثم يقوم البرنامج تلقائيًا بتمييز العناصر المهمة. يتم أيضًا إنشاء المسافات البادئة التي توضح بنية الكود المصدري بواسطة البرنامج بمفرده.
- الإكمال التلقائي: يعرف العديد من محرري النصوص للمبرمجين الأوامر المقابلة للغة البرمجة ويكملونها تلقائيًا ، ويغلقون الأقواس المفتوحة بأنفسهم.
- تمييز الأقواس: تستخدم لغات البرمجة ( الأقواس) لتجميع العناصر معًا. لتتبع مستندات التعليمات البرمجية الكبيرة يقوم بعض محرري النصوص بتحديد الأقواس التي تعمل بها حاليًا.
- طي الكود: يتم إنشاء شفرة المصدر بشكل هرمي في معظم الحالات من خلال المسافات البادئة والأقواس. لإعطاء نظرة عامة أفضل أثناء عملية البرمجة تسمح لك بعض برامج تحرير النصوص بتصغير التعليمات البرمجية المصدر الموجودة في المستويات الأعمق. يؤدي هذا إلى إخفاء أجزاء من التعليمات البرمجية غير ذات صلة حاليًا.
- تكامل المترجم: يمكن ترقية بعض برامج تحرير النصوص باستخدام الإضافات مع المجمعين. هذا يجعل من الممكن اختبار البرنامج الذي تمت كتابته للتو بشكل مباشر.
- التحرير متعدد الأسطر: يمكن أن تكون الشفرة المصدرية المكتوبة يدويًا محاولة معقدة للغاية. لهذا السبب يحب المطورون الوقت الذي يمكنهم فيه القيام بأكبر عدد ممكن من الخطوات في نفس الوقت. يتيح التحرير متعدد الأسطر لهم إجراء تغييرات متطابقة على أقسام متعددة من المستند مما يوفر الوقت.
يمكن تحقيق مشاريع ضخمة بسهولة أكبر مع البرامج الخاصة. تجمع بيئات التطوير المتكاملة أدوات متعددة يحتاجها المطورون لعملهم "متكاملة" مما يؤدي إلى تسريع سير العمل. المزايا الأخرى لمثل هذه IDEs هي الأدوات التي تتواصل مع بعضها البعض بسلاسة وتقوم بإجراء تغييرات متزامنة. تتضمن هذه الأدوات عادةً:
- محررو النصوص: يعد محرر النصوص أيضًا جزءًا أساسيًا من بيئة التطوير. على الرغم من وجود عدد قليل من لغات البرمجة المرئية التي تعمل من خلال ترتيب العناصر الرسومية فإن الغالبية العظمى من التطبيقات تتم كتابتها باستخدام كود المصدر الكلاسيكي. تمتلك برامج تحرير النصوص التي تعد جزءًا من IDE نطاقًا مشابهًا من الوظائف مثل برامج التحرير المستخدمة للبرمجة خارج البيئة.
- المترجم الفوري : تحتوي IDEs أيضًا على مترجم بهذه الطريقة يمكن للمبرمجين تشغيل التعليمات البرمجية الخاصة بهم مباشرة من البيئة.
- المصحح: يعد استخدام مصحح الأخطاء أمرًا ضروريًا لأعمال البرمجة المعقولة. هذه الأداة هي أيضًا مكون قياسي لبيئة تطوير متكاملة. باستخدام هذه الأداة يمكنك البحث في التعليمات البرمجية الخاصة بك عن الأخطاء باستخدام نقاط التوقف لمقاطعة تدفق البرنامج وتحليل العمليات المنفذة.
- الرابط: لإنهاء عملية التجميع يجب دمج العديد من العناصر. الرابط هو برنامج ينفذ هذه المهمة وينشئ ملفًا قابلاً للتنفيذ.
- إدارة الإصدار: تسجل هذه الأداة جميع التغييرات التي تجريها على الكود المصدري ويمكنها استعادة الإصدارات القديمة من الكود. بهذه الطريقة لن يكون مشروعك بأكمله في خطر إذا ارتكبت خطأ عن طريق الخطأ. تعد أداة إدارة الإصدار ضرورية أيضًا عندما يعمل عدة مطورين معًا في نفس المشروع.
- منشئ واجهة المستخدم الرسومية: جزء من العديد من التطبيقات هو واجهة المستخدم الرسومية (GUI). بالطبع يجب تعريف هذا أيضًا في الكود المصدري. يدعم مُنشئ واجهة المستخدم الرسومية المطورين عند تصميم الواجهة. في شكل محرر WYSIWYG يمكنك غالبًا تنظيم العناصر الرسومية باستخدام السحب والإفلات. يترجم منشئ واجهة المستخدم الرسومية هذه إلى وظائف لغة البرمجة داخل IDE.الأمثلة المعروفة لبيئة التطوير المتكاملة هي Eclipse مفتوح المصدر أو Visual Studio منتج Microsoft
حقوق نشر الكود البرمجي
يذهب الكثير من العمل والطاقة الإبداعية إلى الكود البرمجي. هذا هو السبب في أن الكود البرمجي للبرنامج محمي بموجب حقوق النشر . تمامًا كما هو الحال مع حقوق الملكية الفكرية الأخرى لا يُسمح بتوزيع التعليمات البرمجية الخاصة بطرف ثالث دون إذن. هذا ينطبق بشكل خاص على البرمجيات الاحتكارية.
إنها قصة مختلفة عن البرامج مفتوحة المصدر. في عالم تطوير البرمجيات يوجد بالفعل مشهد نشط للغاية مفتوح المصدر وأكثر ليبرالية مع الكود الخاص به. الدافع الأساسي للثقافة المفتوحة بين المطورين هو العمل الجماعي في المشاريع وبالتالي تطوير وتحسين البرمجيات على المدى الطويل. على GitHub أو SourceForge أو الأنظمة الأساسية الأخرى المماثلة يتيح المطورون كود المصدر الخاص بهم على نطاق واسع للمبرمجين الآخرين. يتعين على مطوري البرامج مفتوحة المصدر عادةً الالتزام بشروط معينة مثل تسمية المؤلف والترخيص إذا كانوا يريدون استخدام الكود.
احسنت
ردحذف