संक्षिप्त उत्तर: नहीं।
जावा एक द्विआधारी निष्पादन योग्य नहीं बनाता है लेकिन केवल C # करता है (CLI) के रूप में बाईटेकोड, और दो मुख्य कारणों से "खुले वातावरण" में गंभीर व्यवसाय के लिए यह अच्छी बात नहीं है:
- रिवर्स इंगेजिंग में फंसने की संभावना बहुत अधिक है, विशेष रूप से जावा जैसी पुरानी और वास्तव में अच्छी तरह से जानी जाने वाली भाषाओं के साथ
- आप मशीन के प्रदर्शन पर पूर्ण नियंत्रण में नहीं हैं, जावा के मामले में जेवीएम पूर्ण नियंत्रण लेने में एक बड़ी भूमिका निभाता है।
बेशक हर भाषा की अपनी लाइब्रेरियाँ होती हैं, लेकिन उनमें से प्रत्येक के लिए बड़ी मात्रा में होने के कारण यह एक वास्तविक समस्या नहीं है और मुझे नहीं लगता कि इस विषय का उद्देश्य है।
हो सकता है कि पेशेवर स्तर पर आप कुछ ऐसा पा सकते हैं जो एक देव-किट की तरह नियम को तोड़ सकता है जो सभी सी # बयानों को एक वास्तविक विश्व मशीन के लिए विधानसभा कोड में अनुवाद कर सकता है, लेकिन अगर इस तरह का दृष्टिकोण यह कार्डों में नहीं है तो आप व्यावहारिक रूप से मजबूर हैं। अपने विकास के लिए केवल C और C ++ पर विचार करें जब आप अपने उत्पाद को खुले वातावरण में बेचना चाहते हैं।
मोबाइल उपकरणों के लिए चीजें थोड़ी भिन्न हैं क्योंकि वे "बंद वातावरण" हैं यहां तक कि एंड्रॉइड भी इस तथ्य को देखते हुए व्यावहारिक रूप से बंद है कि वास्तविक दुनिया के रोम आम तौर पर जनता के लिए उपलब्ध नहीं हैं, एंड्रॉइड को ओपनसोर्स माना जा सकता है लेकिन 99 वास्तविक उपकरणों पर रोम का% नहीं है। इस मामले में आप बहुत अधिक बहस नहीं कर सकते, सब कुछ आपके लिए पहले से ही निर्धारित है और हर मंच की अपनी भाषा होती है जैसे हर कोई जानता है।
अंत में यदि आप एक खुले वातावरण में इस उत्पादों को बेचने जा रहे हैं, तो मैं केवल उन भाषाओं का सुझाव दे सकता हूं जो संकलित और बाइनरी / असेंबली कोड का उत्पादन कर सकते हैं, बंद वातावरण में निर्णय अलग-अलग कारणों से करने के लिए टिपिक रूप से अधिक आसान है।