لا أرجح أبدًا أن يكون المشروع الخاص بك مبني باستخدام لغتين مختلفتين بالأخص java مع python بمعنى إذا كنت تحاول كتابة كود لأداء وظيفة ما حاول أن تقوم بكتابته باستخدام لغة واحدة فقط.
فلا يوجد طريقة فعّالة لكتابة كود في لغة A يستدعي كود في لغة B و و الذي بدوره يستدعي كود في اللغة A مرة أخرى. إلا إذا كان كلًا من اللغتين تعملان في بيئة عمل واحدة "و لكن لغة بايثون لا يمكنها العمل على JVM"
و لكن إذا كان هناك غرض ضروري مثل أنك تريد استخدام machine learning model مثلًا يمكنك استخدام اللغتين و لكن الأمر سيكون مكلِّف بعض الشئ لأنك ستحتاج استخدام العديد من التقنيات و الأمور الخاصة ب Devops. أو يمكنك استخدام ححاويات Docker للأكواد الخاصة ب python.
لذلك تم تطوير المكتبة Jython ، يمكنك استخدام الإصدار 3
فهو الإصدار الذي يدعم python 3.
أما عن السؤال الثاني:
يمكنك أن تجد توثيق باللغة العربية لمعظم اللغات البرمجية في موسوعة حسوب:
لربط برنامج بلغة معينة مع برنامج اخر بلغة اخرى يتم بعدة طرق إما عن طريق:
١. الAPI
٢. موجه الأوامر
٣. الشبكة
فى الطريقة الثانية يقوم فيها البرنامج الأساسي باستخدام موجه الأوامر في نظام التشغيل بتشغيل البرنامج المساعد و تمرير البيانات اللازمة له. فإذا فرضنا ان البرنامج الأساسى مكتوب بلغة الجافا و البرنامج المساعد بلغة البايثون فالربط يتم على النحو التالى
import java.io.*;
public class Main { public static void main(String[] args) throws Exception { Process process = Runtime.getRuntime().exec("python helper.py Rami"); BufferedReader stdInput = new BufferedReader(new InputStreamReader(process.getInputStream())); System.out.println(stdInput.readLine()); } }
اما عن سؤالك الثانى فيمكنك البدء فى المصادر العربية و رويدا رويدا تتجه إلى المصادر الأجنبية . و يمكنك الإعتماد على برامج الترجمة فى حالة إذا ما واجهتك صعوبات فى الفهم.