الاختلاف الرئيسي بين Source Program و Object Program هو أن برنامج المصدر هو برنامج يمكن قراءته بواسطة الإنسان مكتوب بواسطة مبرمج بينما برنامج الكائن هو برنامج قابل للتنفيذ آليًا تم إنشاؤه عن طريق تجميع برنامج مصدر.
يمكن ترجمة البرامج المصدر أو تفسيرها للتنفيذ. تساعد Decompilers في تحويل برامج الكائنات إلى برامج المصدر الأصلية. من المهم ملاحظة أن المصطلحين برنامج المصدر وبرنامج الكائن يستخدمان كمصطلحات نسبية. إذا كنت تأخذ برنامج تحويل برنامج (مثل المترجم) ، فإن ما يدخل هو برنامج مصدر وما يخرج هو برنامج كائن.لذلك ، يمكن أن يصبح برنامج الكائن الذي تنتجه إحدى الأدوات ملفًا مصدرًا لأداة أخرى.
ما هو برنامج المصدر؟
يكتب المبرمج البرنامج المصدر باستخدام لغة ذات مستوى أعلى. لذلك ، يمكن للبشر قراءتها بسهولة. عادةً ما تحتوي برامج المصدر على أسماء متغيرة ذات مغزى وتعليقات مفيدة لجعلها أكثر قابلية للقراءة. لا يمكن للجهاز تنفيذ برنامج مصدر مباشرة. يساعد المترجم في تحويل البرنامج المصدر إلى كود قابل للتنفيذ ليتم تنفيذه بواسطة الجهاز. بدلا من ذلك ، هو استخدام مترجم. ينفذ برنامج المصدر سطرًا بسطر دون تجميع مسبق.
الشكل 01: برنامج المصدر
Visual Basic مثال على لغة مترجمة ، بينما Java هي مثال على لغة مفسرة. يتم تجميع ملفات مصدر Visual Basic (ملفات.vb) إلى كود exe. ، بينما يتم أولاً تجميع ملفات مصدر Java (ملفات java.) (باستخدام أمر javac) إلى رمز بايت (رمز كائن موجود في ملفات.class) ثم تفسيره باستخدام مترجم جافا (باستخدام أمر جافا). عندما يتم توزيع تطبيقات البرامج ، فإنها عادة لا تتضمن ملفات المصدر. ومع ذلك ، إذا كان التطبيق مفتوح المصدر ، فسيتم توزيع المصدر أيضًا ويمكن للمستخدم رؤية وتعديل كود المصدر أيضًا.
ما هو برنامج الكائن؟
برنامج الكائن هو عادة ملف قابل للتنفيذ آليًا ، والذي ينتج عن تجميع ملف مصدر باستخدام مترجم. بصرف النظر عن إرشادات الجهاز ، قد تتضمن معلومات تصحيح الأخطاء ، والرموز ، ومعلومات المكدس ، والنقل ، ومعلومات التنميط.نظرًا لأنها تحتوي على تعليمات في رمز الآلة ، فلا يمكن للبشر قراءتها بسهولة. لكن في بعض الأحيان ، تشير برامج الكائنات إلى كائن وسيط بين الملفات المصدر والملفات القابلة للتنفيذ.
تساعد الأدوات المعروفة باسم الروابط على ربط مجموعة من الكائنات بقابل للتنفيذ (مثل لغة سي). كما هو مذكور أعلاه ، فإن ملفات exe. وملفات bytecode هي ملفات كائن يتم إنتاجها عند استخدام Visual Basic و Java على التوالي. يتم تنفيذ ملفات exe. مباشرة على نظام windows platform بينما تحتاج ملفات bytecode إلى مترجم للتنفيذ.
يتم توزيع معظم تطبيقات البرامج مع الكائن أو الملفات القابلة للتنفيذ فقط. من الممكن تحويل الكائن أو الملفات القابلة للتنفيذ إلى ملفاتها المصدر الأصلية عن طريق فك التجميع. على سبيل المثال ، يمكن لأدوات decompiler أن تفك ترجمة ملفات java.class (bytecode) إلى ملفات java الأصلية الخاصة بها.
ما هو الفرق بين Source Program و Object Program؟
برنامج المصدر هو برنامج يمكن قراءته من قبل الإنسان يكتبه مبرمج. إنه مكتوب بلغات ذات مستوى أعلى مثل Java أو C. لذلك ، فإن البرنامج المصدر يمكن قراءته من قبل الإنسان. لا يمكن للآلة أن تفهمها.
من ناحية أخرى ، برنامج Object هو برنامج قابل للتنفيذ آليًا تم إنشاؤه بعد تجميع برنامج مصدر. يحتوي على لغات منخفضة المستوى مثل التجميع أو رمز الجهاز. لذلك ، لا يمكن للإنسان قراءة برنامج الكائن. من المفهوم من قبل الآلة.
ملخص - برنامج المصدر مقابل برنامج الكائن
الفرق بين Source Program و Object Program هو أن برنامج المصدر هو برنامج يمكن قراءته بواسطة الإنسان مكتوب بواسطة مبرمج بينما برنامج الكائن هو برنامج قابل للتنفيذ آليًا تم إنشاؤه عن طريق تجميع برنامج مصدر.