لغات برمجة JVM – دليل الخبراء لإنشاء برامج لجهاز Java الظاهري

إفشاء: يساعدك دعمك في الحفاظ على تشغيل الموقع! نحصل على رسوم إحالة لبعض الخدمات التي نوصي بها في هذه الصفحة.


تتضمن قائمة لغات JVM في هذه الصفحة لغات البرمجة الرئيسية المستخدمة لإنشاء برنامج لـ Java Virtual Machine (JVM). في الأصل ، تم إنشاء JVM لدعم لغة Java فقط. ومع ذلك ، مع اكتسابها شعبية ، تمت إضافة المزيد من اللغات أو تكييفها للعمل على النظام الأساسي.

لغات JVM

تمت كتابة لغات برمجة JVM التالية خصيصًا للتشغيل على Java Virtual Machine. العديد منها عبارة عن تطبيقات للغات الحالية ، مثل Python أو PHP ، معدلة للعمل مع JVM ، مثل Jython (تنفيذ Python) و Quercus (تنفيذ PHP).

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

الأكثر شعبية

لنبدأ بأكثر لغات البرمجة شيوعًا لـ JVM. هذه هي Java (بالطبع) و Groovy و Clojure (لهجة Lisp الوظيفية) و Scala و JRuby و Kotlin و Xtend و Ceylon و Fantom و Jython. تم تطوير بعض اللغات صراحة لـ JVM.

كلوجور

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

سكالا

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

Kotlin

Kotlin هي لغة ترميز مطبوعة بشكل ثابت لجهاز Java Virtual Machine. مصمم لمعالجة معظم مشكلات جافا ، مع نظام نوع مصمم لإزالة المراجع الخالية من التعليمات البرمجية الخاصة بنا. نظرًا لأنها تعمل على JVM ، فإن لغة البرمجة هذه قابلة للتشغيل المتبادل تمامًا مع Java. مثل Scala ، يمكنه استخدام مكتبات وأطر Java الموجودة.

سيلان

سيلان هي لغة برمجة موجهة للكائنات وموجودة بشكل ثابت لـ JVM. تم إنشاؤها بواسطة Red Hat ، ولديها نظام نوع أقوى من Java ، ولكن يأتي مع بناء جملة مألوف. على الرغم من قائمة الميزات القوية ، فإن حصتها الصغيرة في السوق تعني عددًا صغيرًا نسبيًا من المكتبات المفيدة.

جافا

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

رائع

Apache Groovy هي لغة برمجة شائعة لـ JVM مع نظام بيئي كبير ومتطور. إن وجود العديد من المكتبات والأطر (ولا سيما إطار Grails) يجعله خيارًا متعدد الاستخدامات للمطورين. Groovy هي لغة برمجة ديناميكية وموجهة للكائنات.

Xtend

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

فانتوم

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

تطبيق لغات أخرى

لغات برمجة JVM أدناه هي جميع تطبيقات اللغات الشائعة الأخرى ، مثل Lisp و Ruby و Python و PHP.

تطبيقات Lisp

هناك العديد من تطبيقات Lisp كلغات برمجة JVM. هم: الدب المسلح المشترك Lisp ، CL لـ Java ، مخطط ، و Clojure ، (الذي ذكرناه أعلاه).

مخطط

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

  • BiglooJVM . يقدم هذا المحول البرمجي للمخطط رمزًا ثانويًا لـ Java Virtual Machine مباشرةً من لغة برمجة Scheme.

  • كاوا . هذا امتداد للغة المخطط التي تعمل مع Java Virtual Machine.

  • JScheme هو تطبيق مخطط يتفاعل مع Java.

الدب المسلح المشترك Lisp

تحتوي لغة برمجة التنفيذ المشتركة Lisp لـ JVM على كل من مترجم ومترجم ، يطلق عليه ABCL.

CLforJava

CLforJava هو تطبيق Lisp شائع يعمل على JVM ويحاول منح الوصول إلى أي مكتبة Java دون الحاجة إلى واجهة وظائف أجنبية. يبدو أنه قد توقف في السنوات الأخيرة.

كلوجور

ذكرنا Clojure أعلاه في قسم “الأكثر شيوعًا” ، نظرًا لأنه أحد أشهر تطبيقات Lisp في JVM.

Arden2ByteCode

تم تطوير Arden2ByteCode في عام 2010 ، وهو مترجم مفتوح المصدر تم إنشاؤه لـ Arden Syntax. يعمل على JVM ، ترجمة بناء الجملة Arden إلى Java bytcode.

JGNAT (Ada)

كان JGNAT مترجمًا مجانيًا للغة Ada. كانت نسخة من مترجم GNAT الذي قام بتجميع لغة Ada إلى java bytecode. كان JGNAT جزءًا من مشروع للجيش الأمريكي ، وتم إلغاء تمويله منذ ذلك الحين.

مايكرو التركيز البصري كوبول

تقدم Visual Cobol by Micro Focus مجموعة كاملة من الأدوات لتطبيقات COBOL المستقبلية. أحد هذه البرامج هو مترجم يتيح للمطورين تجميع كود COBOL الحالي مباشرة إلى Java ByteCode لجهاز Java Virtual Machine.

تطبيقات لغة ترميز ColdFusion (CFML)

تتيح لغة ترميز ColdFusion لمطوري مواقع الويب إنشاء صفحات تحتوي على معلومات متغيرة (رسومات أو نص) يتم تنظيمها ديناميكيًا استجابة لمدخلات المستخدم ومتغيرات أخرى. لديها العديد من التطبيقات لـ Java Virtual Machine ، بما في ذلك Railo و Lucee و Adoby ColdFusion.

  • أدوبي كولد فيوجن منصة سريعة لتطوير تطبيقات الويب. لغة البرمجة تعمل على Java Virtual Machine. بالإضافة إلى لغة برمجة كاملة ، فإنها تتضمن أيضًا بيئة تطوير متكاملة (IDE).

  • لوسي . Lucee هي لغة برمجة نصية ديناميكية وخفيفة الوزن تعمل على JVM. إنه يتيح التطور السريع لأي شيء من تطبيقات الويب البسيطة للغاية إلى تطبيقات الويب المعقدة للغاية. تم إطلاقه في الأصل على أنه شوكة من Railo (أدناه).

  • Railo هو في الواقع برنامج خادم يقوم بتطبيق لغة البرمجة CFML. يعمل على JVM. تم إنشاؤه في الأصل كمنافس لـ Adobe ColdFusion ، تحول إلى نموذج مفتوح المصدر ومتاح على GitHub.

  • Open BlueDragon أو ببساطة OpenBD ليست لغة برمجة ولكنها محرك Java CFML الذي يفسر ويعالج كود CFML. إنه مفتوح المصدر بالكامل ومجاني للجميع.

تطبيقات جافا سكريبت

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

  • ناشورن هو محرك JavaScript تم إنشاؤه بواسطة Oracle لـ JVM. تم إصدار Nashorn كحل مفتوح المصدر في عام 2012 على مستودع OpenJDK. يتيح للمطورين تضمين JavaScript في تطبيقات Java مثل JVM. “Nashorn” هي الكلمة الألمانية “Rhino” ، وهو تطبيق JS آخر لـ JVM الذي تديره Mozilla.

  • وحيد القرن هي لغة برمجة JSM لموزيلا. مكتوب بلغة جافا ، عادة ما يتم تضمينه في تطبيقات جافا لإعطاء البرمجة النصية للمستخدمين النهائيين.

  • RingoJS هو تطبيق JS متعدد الخيوط لـ JVM ، بشكل أساسي للتطبيقات من جانب الخادم. يستخدم برامج تشغيل JDBC متقدمة ، بالإضافة إلى مكتبة Java Class Library.

قسيمة استضافة الويب

تبحث عن مضيف جافا الصحيح?
يعد InMotion Hosting خيارًا قويًا لاحتياجات Java أو Tomcat أو JSP العامة. توفر مجموعات الأجهزة الزائدة الموثوقية التي تجاوزت العديد من المضيفين. الآن يمكنك توفير ما يصل إلى 50٪ من خططهم. استخدم رابط الخصم هذا
للحصول على الصفقة.

جافا زئبق ميركوري

Java Grade Mercury هو تطبيق للعطارد. إنه مترجم يقوم بإنشاء كود مصدر Java يمكن تجميعه بعد ذلك إلى Java bytecode لبيئة وقت تشغيل Java SE. على الرغم من عدم كتابته خصيصًا للعمل كلغة برمجة JVM ، إلا أنه يمكنه أداء هذه الوظيفة ، كما يلاحظ مطور Opturion Julien Fischer .

مكون باسكال

السبب في عدم تجميع Component Pascal مع تطبيقات JVM Pascal أدناه هو أنه ليس واحدًا. بدلاً من ذلك ، إنه نوع من Oberon-2. لا يسمح للمبرمجين بتحديد طرق التحميل الزائد ، ولكن يمكن استدعاء الطرق المحملة من داخل كود Component Pascal.

تطبيقات باسكال

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

  • MIDletPascal , تم تحسينها خصيصًا لتطوير J2ME midlets ، يمكنها ترجمة شفرة مصدر Pascal إلى Java bytecode لـ JVM.

  • باسكال الحرة هو مترجم مفتوح المصدر لكل من باسكال وكائن باسكال. يمكنه استهداف العديد من بنيات المعالجات ، بما في ذلك AMD64 وجهاز Java الظاهري.

  • الأكسجين كإصدار جديد من باسكال لبيئة .NET و Visual Studio. وتتكون من مترجم ، وتكامل مع Visual Studio IDE ، وبعض المكتبات الداعمة.

Quercus

Quercus هو تطبيق Java لـ PHP. تم إصداره كبرنامج مفتوح المصدر بواسطة تقنية Caucho ، ويأتي مع العديد من ملحقات ووحدات PHP ، مثل JSON و PDO و MySQL. يوفر التكامل الوثيق لخدمات جافا ونصوص PHP.

Rakudo Perl 6

Perl 6 من Rakudo هو مترجم يستهدف كل من Java Virtual Machine و MoarVM. إنه قيد التطوير النشط ، مع أحدث إصدار مستقر في 3 أبريل 2017. إنه تطبيق لغة برمجة بيرل ، وهي لغة عالية المستوى تستخدم لتطوير تطبيقات الويب.

تطبيقات Prolog

Prolog هي لغة برمجة عالية المستوى تم إنشاؤها لأول مرة للتعامل مع تطبيقات الذكاء الاصطناعي. تفتقر إلى نطاق التطبيق الواسع للغة LISP. ومع ذلك ، تُعرف بأنها أداة قوية لحل الأسئلة حول العلاقات .

  • TuProlog هو تطبيق خفيف الوزن لـ Prolog مصمم حول الحد الأدنى من التكوين الأساسي والديناميكي من خلال تحميل المكتبات. يوفر تكاملاً محكمًا بين برولوج واللغات الشائعة الموجهة للكائنات مثل Java و C # و F #.

  • JIProlog هو مترجم Java Prolog خالص مفتوح المصدر وعبر الأنظمة الأساسية. يوفر الامتثال العالي لمعايير Prolog ، ويعزز Java بإضافة قدرات Prolog.

  • XProlog تم تطويره للتعامل مع احتياجات بعض وكلاء جافا. يحسن على WProlog من خلال إضافة بنية حسابية متطورة وإدارة ذاكرة أفضل.

رينجين

Renjin هو مترجم للغة برمجة R ، مبني على JVM. يتيح لـ R Code التفاعل مباشرة مع العديد من هياكل ومكتبات JVM ، دون الحاجة إلى نقل بيانات مكلف أو اتصال بين العمليات.

تطبيقات بايثون

لغة برمجة Python هي لغة مترجمة. ويؤكد على سهولة القراءة البشرية ، مع وجود مسافة بيضاء بدلاً من الأقواس المعقوفة. يتطلب عمومًا عددًا أقل من أسطر التعليمات البرمجية عن اللغات الأخرى مثل C ++ أو Java.

  • جيثون هو تطبيق Python لـ Java Virtual Machine. كان أحدث إصدار مستقر لها في منتصف عام 2015.

  • PyPy هو مترجم Python يقوم بترجمة كود المصدر إلى كود الآلة أو C أو JVM bytecode.

  • رشيق هو تطبيق سريع وخفيف من Python 3 على JVM. يستخدم مترجم Java JIT ومتاح على GitHub.

تطبيقات روبي

روبي هي لغة برمجة مفتوحة المصدر وديناميكية تركز على الإنتاجية والبساطة. يجعل تركيبها الأنيق من السهل القراءة والكتابة. تشمل تطبيقات JVM Mirah و JRuby.

  • ميرا هي لغة برمجة JVM وتنفيذ Ruby يتبع مبادئ عدم وجود مكتبة وقت تشغيل ، بناء جملة بسيط ، وحدات ماكرو و metaprogramming ، ولا عقوبة أداء.

  • جروبي هو تنفيذ مترابط ومستقر وعالي الأداء لـ Ruby لجهاز Java Virtual Machine. إنها منصة مستقلة وتوفر حلاً سهل التثبيت مع ترحيل بسيط.

NetRexx

NetRexx هي لغة برمجة مفتوحة المصدر لجميع الأغراض لـ JVM مستوحاة من كل من لغة Java و Rexx. تم تصميمه لجعل البرمجة “سهلة وممتعة مرة أخرى”.

جاباكو

Jabaco هي لغة برمجة أساسية تم تطويرها من أجل Java Virtual Machine. كود المصدر مشابه لـ VB6 ، تم تجميعه برمز بايت “مشابه” للإخراج من لغة برمجة Java.

جاكل

لغة برمجة Jacl هي تطبيق لـ Tcl ، مكتوب بلغة Java. إنه جاهز للإنتاج ومستقر بما يكفي للاستخدام اليومي. ينتج Java bytecode قابل للاستخدام مع JVM.

JBasic

JBasic هو مترجم لغة BASIC ، مكتوب بالكامل بلغة Java للاستخدام المضمن واستخدام سطر الأوامر. وهو يدعم بناء جملة نمط GW-BASIC التقليدي ، ويوفر ملحقات حديثة. يمكن تشغيله مباشرة من قذيفة.

محولات JVM (البرامج الخارجية التي تنشئ Java Code)

بصرف النظر عن لغات البرمجة المكتوبة خصيصًا لـ Java Virtual Machine أو المعدلة من اللغات الحالية ، هناك العديد من البرامج التي تحول الشفرة الخارجية إلى Java. لا تحصل محولات JVM هذه دائمًا على تقييمات الاستعراضات (راجع هذه المناقشة على ResearchGate ، وهذه المناقشة على StackOverflow ، وهذه المناقشة على Quora).

مع هذا التحذير ، إليك بعض أفضل محولات الكود:

  • C2J. يقوم هذا المحول بترجمة البرامج المكتوبة بلغة C إلى Java للاستخدام مع JVM.

  • CS2J لتحويل C # إلى Java لجهاز Java Virtual Machine أو التطبيقات الأخرى ، جرب محول CS2J.

  • C ++ لتحويل جافا. يحتوي هذا على إصدار مجاني يعمل على ما يصل إلى 1000 سطر في كل مرة للمجلدات و 100 سطر في كل مرة لمقتطفات التعليمات البرمجية. النسخة الكاملة تكلف 129 دولار.

  • P2J. يتكون محول Python to Java هذا من مترجم مصدر ومصحح ويدعي القدرة على تحويل الشفرة بدقة 75 ٪ للاستخدام مع JVM.

  • لا توجد جافا سكريبت محددة لمحولات جافا ، ويرجع ذلك أساسًا إلى أنهما على الرغم من الأسماء ، فهذه لغتان مختلفتان للغاية. بالنسبة لأولئك الذين يحتاجون إلى ترجمة JS للاستخدام مع Java Virtual Machine ، يعرض مستودع GitHub طريقة سهلة لضم كائنات JS إلى كائنات Java.

  • PHP و Java لغات مختلفة للغاية. (راجع هذه المناقشة.) لبعض الوقت ، حاول محول P2J تحويل PHP إلى Java لاستخدامه مع JVM. ومع ذلك ، فقد توقف هذا المشروع.

  • من الممكن تضمين كود Java في برنامج Perl باستخدام Inline :: Java (انظر هذه المناقشة). لتحويل الشفرة مباشرة للاستخدام مع Java Virtual Machine ، يوجد محول تجريبي هنا .

قسيمة استضافة الويب

تبحث عن الكثير على استضافة JVM?
أحرزت A2 Hosting المرتبة الأولى في اختبارات السرعة والأداء الأخيرة. تدعم خطط الاستضافة الخاصة بهم Tomcat وصفحات JSP و Java servlets والمزيد. يمكنك توفير ما يصل إلى 50٪ على خططهم المناسبة للمطورين. استخدم رابط الخصم هذا
للحصول على الصفقة.

مزيد من القراءة والموارد ذات الصلة

بالإضافة إلى قائمة لغات JVM المعروضة هنا ، راجع مستودع GitHub هذا ، وكذلك قائمتنا المتزايدة لموارد لغة البرمجة.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map