14

كيف تتم البرمجة بعدة لغات برمجة؟

  • geq

سمعت كثيرا ان هناك امكانية برمجة بعدة لغات، ك c++ و بايتون لإنشاء برنامج. فهل تعلم كيف هذا؟

وكيف تكون منظومة البرامج الكبيرة؟

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

11

تكون المنظومة مكونة من عدة برامج كل برنامج بلغة معينة, وربما عدة سيرفرات, تتعامل مع بعضها عن طريق webservices او غيرها .. لكن لا يتم خلط لغات البرمجة مع بعضها !

في احيان اخرى يتم كتابة مكتبات مثلاً بلغة C واستدعائها بلغة اخرى مثل python او كتابة مكتبات بلغة جافا, والتعامل معها من لغة اخرة,

وهكزا ..

مثال بسيط علي ما قلت للتوضيح

سنقوم بانشاء برنامج بسيط بلغة C

#include <stdio.h>
int main(int argc,char *argv[])
   {
       if(argc = 2)
                printf("%d",atoi(argv[1])+atoi(argv[2]));
  }

بعدها سنقوم ببنا البرنامج باسم calc

cc program.c -o calc.exe

البرنامج عند استدعائه يجمع العددين الاول والثاني من الاستدعاء ويخرجهم مثال علي استخدامه

calc 1 2

اذا سيكون استدعائه سهل باستخادم بايثون

import subprocess
subprocess.call(["calc","1","2"])

حاول فهم ما اوضحت واذا هناك شي غير واضح تفضل ستسعدني مساعدتك

اتمني لك التوفيق

تفسير جميل جدا احببت شرحك اخي الكريم، هل هدا ينطبق أيضا على الويب؟ و السيرفورات؟

المخرج الناتج من برنامج C أين يتخزن وكيف لبايثون تستدعيه ؟ لم افهم المخرج الذي وضعته وكيف استدعيته

صعب شرحها بتعليق انتظر ساقوم بتحضير موضوع وموضع اخر عن الشرح في الويب (ان شاء الله)

يمكن ذلك بعدة طرق، مثلاً في البرامج المكتبة يمكن للغات مثل سي++ ودلفي إنتاج مكتبات DLL (مكتبات الربط الديناميكي)، تحتوي على دوال يمكن إستدعائها بنفس هذه اللغات أو لغات أخرى مثل VB ودوت نت، ويمكن إنتاج نوع أخر من مكتبات ال DLL وتسمى Com DLL، ويمكن إستدعئها بلغات أصغر مثل VB Script أو ضمن الأكسل.

أما في الويب فالأمور أسهل ويكون الدعم على مستوى اللغات وأنظمة التشغيل مثلاً لو قمت ببرمجة Web Services بإستخدام برتوكول SOAP بسي# مثلاً تحتي بيئة ويندوز و IIS فيمكن إستدعائها من خلال لغة الجافا على لينكس أو بايثون على لينكس أو بلغة أخرى مثل بي أتش بي أو روبي أو أي بيئة برمجية تدعم إستخدام الويب سيرفرس، ويتطور الأمر أكثر حاليا مع ال Rest services فيمكنك حتى إستدعائها بالجافا سكريبت وهكذا.

لكن دائما الأحتياج هوا ما يحدد طبيعة ال architectural التي تحتاج لبنائها لموقعك أو برنامجك

حسب ما عرف من خبرتي في التعمال مع برامج .NET يمكنك عمل برنامج بلغة معينة مثلا بC# ثم إستعمال ملفات .DLL و بعد ذلك وظعهم في برنامج بلغة VB