คำตอบสั้น ๆ : ไม่
Java ไม่ได้สร้างไบนารีที่ปฏิบัติการได้ แต่ bytecode อย่าง C # ทำ (CLI) เท่านั้นและนี่ไม่ใช่สิ่งที่ดีสำหรับธุรกิจที่จริงจังใน "สภาวะแวดล้อมที่เปิด" ด้วยเหตุผลสองประการ:
- ความน่าจะเป็นที่จะติดกับเอ็นจิเนียริ่งแบบย้อนกลับนั้นสูงมากโดยเฉพาะอย่างยิ่งกับภาษาที่เก่าแก่และมีความรู้ดีอย่างชวา
- คุณไม่สามารถควบคุมการแสดงเครื่องจักรได้อย่างเต็มที่ในกรณีของ Java JVM มีบทบาทสำคัญในการควบคุมอย่างเต็มที่
แน่นอนว่าทุกภาษามีห้องสมุดของตัวเอง แต่เนื่องจากพวกเขามีจำนวนมากสำหรับแต่ละภาษาและนี่ไม่ใช่ปัญหาจริงและฉันไม่คิดว่าเป็นจุดประสงค์ของหัวข้อนี้
บางทีในระดับมืออาชีพคุณสามารถค้นหาสิ่งที่สามารถทำลายกฎเหมือน dev-Kit ที่สามารถแปลคำสั่ง C # ทั้งหมดเป็นรหัสประกอบสำหรับเครื่องในโลกแห่งความจริง แต่ถ้าวิธีการนี้ไม่ได้อยู่ในการ์ดคุณจะต้องถูกบังคับให้ทำ พิจารณาเฉพาะ C และ C ++ สำหรับการพัฒนาของคุณเมื่อคุณต้องการขายผลิตภัณฑ์ของคุณในสภาพแวดล้อมแบบเปิด
สิ่งที่แตกต่างกันเล็กน้อยสำหรับอุปกรณ์มือถือเพราะพวกเขาเป็น "สภาพแวดล้อมที่ปิด" แม้ Android จะปิด pratically พิจารณาข้อเท็จจริงที่ว่าแหล่งที่มาของ ROM โลกแห่งความจริงมักจะไม่สามารถใช้ได้กับสาธารณะ Android อาจได้รับการพิจารณา opensource แต่ 99 % ของ ROMs ในอุปกรณ์จริงไม่ใช่ ในกรณีนี้คุณไม่สามารถโต้แย้งได้มากเกินไปทุกอย่างถูกตั้งค่าไว้แล้วสำหรับคุณและทุกแพลตฟอร์มมีภาษาของตัวเองเหมือนที่ทุกคนรู้
ในที่สุดหากคุณกำลังจะขายผลิตภัณฑ์นี้ในสภาพแวดล้อมที่เปิดฉันสามารถแนะนำภาษาที่สามารถสร้างรหัสคอมไพล์และไบนารี / แอสเซมบลีเท่านั้นในสภาพแวดล้อมที่ปิดการตัดสินใจง่ายกว่าด้วยเหตุผลที่แตกต่างกัน