JavaRush /مدونة جافا /Random-AR /استراحة القهوة رقم 21. دمج بايثون مع جافا. التعرف على جاك...

استراحة القهوة رقم 21. دمج بايثون مع جافا. التعرف على جاكرتا EE وEclipse MicroProfile

نشرت في المجموعة

التكامل بايثون مع جافا؟ ولم لا!

المصدر: Jaxenter استراحة القهوة رقم 21.  دمج بايثون مع جافا.  التعرف على جاكرتا EE وEclipse MicroProfile - 1 في الواقع، الجمع بين برمجة الأنظمة ولغات البرمجة النصية ليس مفهومًا جديدًا غريبًا: فهو نادرًا ما يستخدم. بالنسبة للغات البرمجة التي لها واجهة تطبيق ثنائية مشتركة، فمن الممكن تمامًا دمجها في مكتبة واحدة أو ملف قابل للتنفيذ. وفي حين أن هذا يجعل الأمور أكثر صعوبة بعض الشيء، إلا أن هناك أدوات يمكن أن تساعد. بايثون وجافا يكملان بعضهما البعض في الواقع. على سبيل المثال، يمكنك استخدام إحداهما للمهام الفرعية النموذجية، والأخرى كلغة برمجة نصية لتوسيع إعدادات التطبيق الخاص بك. فيما يتعلق بدمج اللغات الأخرى، فإن JavaScript، على سبيل المثال، لا يتم استخدامه عادةً خارج متصفحات الويب، على الأقل مقارنة بلغات البرمجة النصية الأخرى مثل Perl وTcl وVisual Basic وPython. ومع ذلك، عادة ما يتم دمج كل هذه اللغات مع لغات أخرى. لقد تم دمج Python تقليديًا مع C وC++، في حين أن Visual Basic غالبًا ما تكون لغة البرمجة النصية المفضلة لـ C++ على نظام Windows الأساسي. وPerl، مثل Tcl، يُستخدم بشكل شائع في C/Unix. يتم استخدام Python في كثير من الأحيان على نظام التشغيل Windows لأنه يتكامل بسهولة مع بنية Microsoft Scripting Host بالإضافة إلى COM. بالإضافة إلى ذلك، فهو رائع أيضًا لأدوات macOS.

لماذا جافا وبايثون؟

بايثون هي لغة برمجة كائنية التوجه، مما يجعلها مناسبة تمامًا لجافا. بالاشتراك مع مترجم Python المكتوب بالكامل بلغة Java، مثل Jython، يمكنك كتابة تطبيقات صغيرة كاملة في Python، والتي يمكن بعد ذلك تشغيلها في أي متصفح متوافق مع JDK، مع تنفيذ التعليمات البرمجية بنفس سرعة C/CPython تقريبًا. يقوم مترجم Jython بترجمة كود مصدر Python مباشرة إلى Java bytecode، مما يمنحه سرعة مذهلة. لكن حلول البرمجة النصية الأخرى لـ Java (Java/TCL، Java/Perl، وما إلى ذلك) تربط JVM بتطبيق C في هذه اللغات، مما لا يخلق مشكلة في قابلية النقل فحسب، بل إن هذه الحلول نفسها ليست سهلة كما نرغب.

ما هي أفضل طريقة لاستخدام Java وJPython معًا؟

هناك عدد من الأدوات التي أثبتت جدواها والتي تنفذ لغة Python في Java أو العكس، بحيث يمكنك تشغيل الأوامر من لغة إلى أخرى. فيما يلي قائمة قصيرة ببعض أفضل الأدوات لدمج Python مع Java:
  • Jython هو Python المطبق في Java.
  • JPype - يسمح لك بتشغيل أوامر Java باستخدام Python.
  • جيب - جافا مدمجة في بايثون.
  • JCC هو منشئ أكواد C++ للاتصال بـ Java من C++/Python.
  • Javabridge عبارة عن حزمة للتشغيل والتفاعل مع JVM من CPython.
  • Py4j - يسمح لك بتشغيل أوامر Java في Python.
  • يعد Voc أحد عناصر أداة BeeWare . يحول كود Python إلى Java bytecode.
  • p2j - يحول كود بايثون إلى جافا. لم يعد في التنمية.
هناك عدة طرق لاستخدام هذه الأدوات. لكل منها مزاياه وعيوبه. على سبيل المثال، يمكنك إنشاء نموذج أولي لتطبيق كامل في Jython، وبعد عدة جولات من الاختبار وإعادة التصميم، أعد كتابة كل شيء في Java. يتيح لك ذلك الاستفادة من المرونة المتزايدة وسرعة تطوير لغات البرمجة النصية في وقت مبكر من مشروعك. ومع ذلك، يجب أن يكون منتجك النهائي أكثر تفصيلاً مما لو كنت قد بدأت للتو في الكتابة بلغة Java فقط. وإذا كنت قلقًا بشأن مكتبات واجهة المستخدم، فيمكن لـ Jython الارتباط بنفس UILs مثل Java العادية، لذلك يجب أن يكون تحويل Java أمرًا سهلاً. ومع ذلك، فإن الأمور ليست بهذه البساطة إذا كنت تحاول بناء مشروع كبير. من المحتمل أن تواجه عيوب المكونات والطبقات المختلفة التي لها دورات تطوير مستقلة، مثل مكونات المستوى الأعلى. بالطبع، يمكنك إعادة كتابة المكونات الفردية في Java عندما تقترب من إصدار مستقر، أو ببساطة قم بكتابة بعض مكوناتك حصريًا في Java من البداية. هناك خيار آخر وهو إعادة كتابة المكونات التي يكون الأداء مهمًا لها فقط. بهذه الطريقة، يمكنك ترك المكونات عالية المستوى في Jython، مما يعني أنك تحتاج فقط إلى إعادة كتابة المكونات ذات المستوى الأدنى، وفي بعض الحالات لن تضطر إلى إعادة كتابة أي شيء على الإطلاق.

تقديم جاكرتا EE وEclipse MicroProfile

المصدر: DZone ألم تسمع عن Jakarta EE وEclipse MicroProfile بعد؟ لذا، حان الوقت للتعرف على كيفية تطوير معيار Java Enterprise. ومن المؤكد أن هاتين التقنيتين ستكونان مفيدتين لك في المستقبل، حيث أنهما رائعتان لبناء تطبيقات المؤسسات الحديثة والسحابية.

ما هي جاكرتا EE؟

Jakarta EE عبارة عن مجموعة من المواصفات (JAX-RS وCDI وJPA وJSON-P وما إلى ذلك) لكتابة تطبيقات المؤسسات بلغة Java. هذه المواصفات هي المستندات التي تحدد واجهة برمجة التطبيقات (API) وكيفية تفاعل التكنولوجيا. استراحة القهوة رقم 21.  دمج بايثون مع جافا.  التعرف على جاكرتا EE وEclipse MicroProfile - 2تشبه وثائق المواصفات الواجهات ذات التعريفات الرسمية، ويعتمد التنفيذ الفعلي لهذه الواجهات على بائع خادم التطبيق (مثل WildFly، وOpen Liberty، وPayara، وTomEE). لمنع البائع من تنفيذ المواصفات بشكل غير صحيح، توفر كل مواصفات مجموعة أدوات توافق التكنولوجيا (CTS). هذه مجموعة من الاختبارات للتحقق من الامتثال لتنفيذ مواصفات معينة. بمجرد أن يرسل خادم التطبيق CST لجميع المواصفات، فإنه يتوافق مع المعيار بأكمله. لسنوات عديدة، كانت Java EE هي الطريقة القياسية لكتابة تطبيقات المؤسسات. تم دعم Java EE (المعروف سابقًا باسم J2EE) بواسطة Oracle لفترة طويلة. في عام 2017، قررت Oracle التوقف عن تطوير معايير الشركة تحت رعايتها ونقلها إلى مؤسسة Eclipse Foundation. لأسباب قانونية، اضطروا إلى تغيير العلامة التجارية وقرروا تسمية المنتج بـ Jakarta EE. يمكنك العثور على جميع مواصفات Jakarta EE على الموقع الرسمي ، ويمكنك الحصول على مزيد من المعلومات حول كيفية عمل عملية المواصفات حاليًا على موقع Eclipse Foundation.

ما هو ملف تعريف Eclipse الصغير؟

نظرًا لأن عملية إصدار الميزات الجديدة وتكييفها لـ Java EE كانت بطيئة جدًا، قررت مجموعة من البائعين وأعضاء المجتمع إنشاء MicroProfile في عام 2016. كان الهدف الرئيسي لهذا المشروع هو مساعدة المطورين على مواكبة العصر وكذلك تحسين النظام الأساسي الحالي لهندسة الخدمات الصغيرة. حاليًا، يحتوي Eclipse MicroProfile على اثني عشر مواصفات. أربعة منهم هم أيضًا جزء من جاكرتا EE. يتيح لك هذا إنشاء تطبيقات مستقلة حصريًا باستخدام MicroProfile. جميع المواصفات مستقلة عن البائع ويأتي التنفيذ مع خادم التطبيقات. يمكن اعتبار مواصفات جاكرتا EE أساسًا متينًا لبناء تطبيقات المؤسسات. بالإضافة إلى ذلك، يسد Eclipse MicroProfile فجوة في بناء الأنظمة الموزعة حيث تتبع التكنولوجيا منهجية تطبيق Twelve-Factor .
تعليقات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION