شيفرة مصدرية

عودة للموسوعة
مثال على كود مصدري سهل مكتوب بلغة جافا، مع الأخذ في الاعتبار حتى الكود العملي هوالمكتوب بالأزرق، أما الأحمر والأخضر فهي تعبير عن تعليقات للإيضاح ولا تؤثر في عمل البرنامج (لاحظ حتى التعليقات سُبقت برموز خاصة مثل "//%22 وبهذا يستطيع برنامج التطوير تمييزها وإهمالها)

الشفرة المصدرية أوالكود المصدري أومصدر البرنامج (بالإنجليزية: Source Code)‏ مصطلح في عالم الحاسوب يُعبِّر عن الأوامر والتعليمات المكتوبة بلغة من لغات البرمجة التي يمكن قرائتها عادة كنص بسيط. تم تصميم شفرة المصدر خصيصًا لتسهيل عمل مبرمجي الحاسوب، الذين يحددون الإجراءات التي يجب حتى يقوم بها الحاسوب عن طريق كتابة شفرة المصدر. غالبًا ما يتم تحويل شفرة المصدر من خلال مجمع أومترجم إلى رمز آلة ثنائية يفهمه الحاسوب. قد يتم تخزين رمز الجهاز للتطبيق في وقت لاحق، أويتم تفسير شفرة المصدر وتطبيقها على الفور.

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

تعريفات

يعهد نظام معلومات لينوكس الكود المصدري على النحوالتالي:

شفرة المصدر (يشار إليها أيضًا باسم المصدر أوالشفرة) هي إصدار البرنامج كما هومكتوب في الأصل (مكتوبًا في الحاسوب) بواسطة إنسان بنص عادي أي (الأحرف الأبجدية الرقمية مقروءة من البشر).

يمكن أيضا أخذ فكرة بشكل أوسع من شفرة المصدر، لتضمين رمز الآلة والإشعارات باللغات الرسومية، ولا يعتبر أي منهما نصأ بطبيعته. مثال من منطقة تم تقديمها حول مؤتمر IEEE السنوي وحول تحليل تعليمات رمز المصدر.

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

نبذة تاريخية

تم إدخال أول البرامج الخاصة بأجهزة الحاسوب المخزنة في برنامج ثنائي من خلال مفاتيح اللوحة الأمامية للحاسوب. لم تكن الجيل الأول من لغات البرمجة هذه مميزة بين شفرة المصدر ولغة الآلة.

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

نشرت معظم مجلات الحاسوب المبكرة شفرة المصدر باعتبارها نوع من البرامج.

من حين لآخر يتم نشر شفرة مصدر لبرامج كبيرة مثل كتاب مقوى مثل أجهزة الحاسوب والتنضيد.

منظمة

عادةً ما يتم الاحتفاظ بالكود المصدري الذي يشكّل برنامجًا في ملف نصي واحد أوأكثر مخزّنًا على القرص الصلب للحاسوب. عادة يتم ترتيب هذه الملفات بعناية في شجرة الدليل، والمعروفة باسم شجرة المصدر. يمكن أيضًا تخزين شفرة المصدر في قاعدة بيانات (كما هورائج في الإجراءات المخزنة) أوفي أي مكان آخر.

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

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

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

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

نظام التحكم في المراجعة هي أداة أخرى يتم استخدامها بشكل متكرر من قبل المطورين لصيانة التعليمات البرمجية المصدر

المقاصد

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

وكثيرا ما يتم مشاركة شفرة المصدر بين المطورين كعامل يساهم في نضوج مهاراتهم في البرمجة. بعض الناس يعتبرون شفرة المصدر وسيلة فنية معبرة.

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

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

يقوم المبرمجون بشكل متكرر بتعديل شفرة المصدر من بترة واحدة من البرامج لاستخدامها في مشاريع أخرى، وهومفهوم يعهد باسم إعادة استخدام البرامج.

الجوانب القانونية

انظر أيضًا: تاريخ البرمجيات الحرة والمفتوحة المصدر

يختلف الوضع في جميع أنحاء العالم، ولكن في الولايات المتحدة قبل عام 1974، لم تكن البرمجيات وشفرة المصدر محمية بحقوق التأليف والنشر، وبالتالي دائمًا برامج المجال العام.

في عام 1974، قررت اللجنة الأمريكية للاستخدامات التكنولوجية الحديثة للأعمال المحمية بحقوق الطبع والنشر (CONTU) حتى "برامج الحاسوب، إلى الحد الذي تجسد فيه الخلق الأصلي للمؤلف، هي موضوع مناسب لحقوق النشر".

في عام 1983 في قضية المحكمة الأمريكية أبل ضد فرانكلين حكمت حتى الشيء نفسه ينطبق على رمز الكائن. وأن قانون حق المؤلف منح برامج الحاسوب حالة حقوق التأليف والنشر للأعمال الأدبية.

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

الترخيص

المادة الرئيسية: رخصة البرمجيات

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

وبوجه عام،قد يكون البرنامج مفتوح المصدر إذا كان رمز المصدر مجانيًا للاستخدام والتوزيع والتعديل والدراسة والملكية إذا كان الكود المصدري سرًا، أومملوكًا ومقيّدًا بشكل خاص. من أول تراخيص البرامج التي يتم نشرها ومنح هذه الحريات بشكل صريح رخصة جنوالعمومية في عام 1989؛ رخصة بي إس دي هي مثال مبكر آخر من عام 1990.

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

الجودة

الموضوع الرئيسي: جودة البرمجيات

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

مراجع

  1. ^ of Managerial, Socio-Economic & Business Terms (En/Ar)/Source Code "LDLP - Librairie Du Liban Publishers" تحقق من قيمة |مسار أرشيف= (مساعدة). www.ldlp-dictionary.com. مؤرشف من الأصل فيعشرة نوفمبر 2018. اطلع عليه بتاريخعشرة نوفمبر 2018.
  2. ^ "Programming in C: A Tutorial" (PDF). مؤرشف من الأصل (PDF) في 23 فبراير 2015.
  3. ^ The Linux Information Project. "Source Code Definition". نسخة محفوظة 03 أكتوبر 2017 على مسقط واي باك مشين.
  4. ^ SCAM Working Conference, 2001–2010. نسخة محفوظة 29 سبتمبر 2017 على مسقط واي باك مشين.
  5. ^ What is free software? - GNU Project - Free Software Foundation نسخة محفوظة 08 أبريل 2018 على مسقط واي باك مشين.
  6. ^ Martin Goetz, Peter Schneider. "Object-code only: Is IBM playing fair?". p. نسخة محفوظة 09 فبراير 2017 على مسقط واي باك مشين.
  7. ^ "Extending and Embedding the Python Interpreter". docs.python.org. مؤرشف من الأصل في ثلاثة أكتوبر 2012.
  8. Spinellis, D: Code Reading: The Open Source Perspective. Addison-Wesley Professional, 2003. (ردمك 0-201-79940-5)
  9. ^ "Art and Computer Programming" ONLamp.com, (2005) نسخة محفوظة 20 فبراير 2018 على مسقط واي باك مشين.
  10. ^ Apple Computer, Inc. v. Franklin Computer Corporation Puts the Byte Back into Copyright Protection for Computer Programs in Golden Gate University Law Review Volume 14, Issue 2, Article ثلاثة by Jan L. Nussbaum (January 1984) نسخة محفوظة 07 مايو2017 على مسقط واي باك مشين.
  11. Lemley, Menell, Merges and Samuelson. Software and Internet Law, p. 34.
  12. ^ (PDF) https://web.archive.org/web/20181112231734/http://cr.yp.to/export/2002/08.02-bernstein-subst.pdf. مؤرشف من الأصل (PDF) في 12 نوفمبر 2018. مفقود أوفارغ |title= (مساعدة)
  13. ^ Bernstein v. US Department of Justice on eff.org نسخة محفوظة 04 أبريل 2018 على مسقط واي باك مشين.
  14. ^ EFF at 25: Remembering the Case that established Code as Speech on EFF.org by Alison Dame-Boyle (16 April 2015) نسخة محفوظة 05 يناير 2018 على مسقط واي باك مشين.
  15. ^ Hancock, Terry (2008-08-29). "What if copyright didn't apply to binary executables?". Free Software Magazine. Retrieved 2016-01-25.

انظر أيضًا

  • لغة الآلة
  • برمجيات احتكارية
  • برمجيات حرة
  • مصدر مفتوح
  • مصرف
  • شجرة بنية مجردة
تاريخ النشر: 2020-06-01 20:33:28
التصنيفات: نص, برمجة, قوالب لغات برمجة الحاسوب, كود مصدري, صفحات برابط تشعبي خاطئ, قالب أرشيف الإنترنت بوصلات واي باك, صفحات تحتوي مراجع ويب بدون عنوان, صفحات تحتوي مراجع ويب برابط تشعبي فقير, مقالات تحتوي نصا بالإنجليزية, قالب تصنيف كومنز بوصلة كما في ويكي بيانات, صفحات تستخدم خاصية P244, صفحات تستخدم خاصية P227, صفحات تستخدم خاصية P268, بوابة برمجة الحاسوب/مقالات متعلقة, جميع المقالات التي تستخدم شريط بوابات

مقالات أخرى من الموسوعة

سحابة الكلمات المفتاحية، مما يبحث عنه الزوار في كشاف:

آخر الأخبار حول العالم

"السرقة المفبركة على المباشر".. "Hit Radio" ترد على الواقعة

المصدر: تيل كيل عربي - المغرب التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:11:59
مستوى الصحة: 45% الأهمية: 64%

القطاع الصناعي.. ما الذي حققه المغرب؟

المصدر: تيل كيل عربي - المغرب التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:12:01
مستوى الصحة: 48% الأهمية: 53%

(sexy.ma ) حلال أم حرام؟..أغرب الفتاوى المغربية الرسمية على الإطلاق

المصدر: الأيام 24 - المغرب التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:11:08
مستوى الصحة: 75% الأهمية: 76%

الكومي: غياب صلاح مؤثر.. وهذه آخر مستجدات أزمة الشيبي والشحات

المصدر: الأهلى . كوم - مصر التصنيف: رياضة
تاريخ الخبر: 2024-03-28 12:10:30
مستوى الصحة: 31% الأهمية: 42%

قطرات مطرية.. توقعات أحوال الطقس اليوم الخميس

المصدر: تيل كيل عربي - المغرب التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:12:03
مستوى الصحة: 59% الأهمية: 60%

الركراكي يزرع الشك في صفوف المنتخب المغربي

المصدر: الأيام 24 - المغرب التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:10:55
مستوى الصحة: 63% الأهمية: 79%

شرط واحد يفصل غلطة سراي عن شراء عقد زياش بصفة نهائية

المصدر: تيل كيل عربي - المغرب التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:11:58
مستوى الصحة: 55% الأهمية: 56%

موعد مران الأهلي الأخير قبل مواجهة سيمبا

المصدر: الأهلى . كوم - مصر التصنيف: رياضة
تاريخ الخبر: 2024-03-28 12:10:32
مستوى الصحة: 45% الأهمية: 41%

طقس الخميس.. أمطار الخير بهذه المناطق من المملكة

المصدر: الأيام 24 - المغرب التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:11:05
مستوى الصحة: 72% الأهمية: 83%

لماذا ترفض كندا بيع الأسلحة لإسرائيل؟

المصدر: RT Arabic - روسيا التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:08:25
مستوى الصحة: 79% الأهمية: 91%

بسبب “دار النسا”.. سامية أقريو تتعرض لانتقادات لاذعة

المصدر: الأيام 24 - المغرب التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:11:02
مستوى الصحة: 62% الأهمية: 76%

شكوك حول نية البنتاغون التخندق في جنوب اليمن

المصدر: RT Arabic - روسيا التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:08:26
مستوى الصحة: 85% الأهمية: 87%

كازاخستان تسعى إلى دور القيادة في آسيا الوسطى

المصدر: RT Arabic - روسيا التصنيف: سياسة
تاريخ الخبر: 2024-03-28 12:08:24
مستوى الصحة: 82% الأهمية: 94%

تحميل تطبيق المنصة العربية