Tôi hoàn toàn không hiểu những gì tôi đang hỏi (lol!), Vâng, theo nghĩa là nếu nó thậm chí có thể, đó là. Nếu không, xin lỗi.
Giả sử tôi có một chương trình Java. Nó có một Main
và một JavaCalculator
lớp học. JavaCalculator
có một số chức năng cơ bản như
public int sum(int a,int b) {
return a + b
}
Bây giờ giả sử tôi có một tập tin ruby. Được gọi là MyProgram.rb
.
MyProgram.rb
có thể chứa bất cứ điều gì bạn có thể mong đợi từ một chương trình ruby. Chúng ta hãy giả sử nó chứa những điều sau đây:
class RubyMain
def initialize
print "The sum of 5 with 3 is #{sum(5,3)}"
end
def sum(a,b)
# <---------- Something will happen here
end
end
rubyMain = RubyMain.new
Tốt Bây giờ sau đó, bạn có thể đã nghi ngờ những gì tôi muốn làm:
- Tôi muốn chạy chương trình Java của tôi
- Tôi muốn nó thực thi tệp Ruby
MyProgram.rb
- Khi chương trình Ruby thực thi, nó sẽ tạo một thể
JavaCalculator
hiện, thực thisum
chức năng mà nó có, lấy giá trị và sau đó in nó. - Các tập tin ruby đã được thực hiện thành công.
- Tôi muốn nó thực thi tệp Ruby
- Chương trình Java đóng lại.
Lưu ý : "tạo một thể hiện của JavaCalculator
" không hoàn toàn cần thiết. Tôi sẽ hài lòng với việc chỉ chạy một sum
chức năng từ, nói, Main
lớp.
Câu hỏi của tôi: là như vậy có thể? Tôi có thể chạy một chương trình Java mà thực thi bên trong một tệp Ruby có khả năng ra lệnh cho chương trình Java thực hiện một số việc nhất định và nhận kết quả không? Trong ví dụ trên, tệp Ruby yêu cầu chương trình Java thực hiện một khoản tiền cho nó và đưa ra kết quả.
Điều này nghe có vẻ vô lý. Tôi là người mới trong loại điều này (nếu có thể, đó là).
TẠI SAO TÔI HỎI NÀY?
Tôi có một chương trình Java, một loại công cụ trò chơi. Tuy nhiên, đối tượng mục tiêu của tôi là một nhóm các lập trình viên Ruby. Tôi không muốn cho họ học Java cả. Vì vậy, tôi đã hình dung rằng có lẽ chương trình Java có thể chỉ đơn giản là cung cấp chức năng (khả năng tạo cửa sổ, hiển thị các họa tiết, phát âm thanh ...) và sau đó, khán giả của tôi có thể đơn giản viết mã bằng Ruby logic, về cơ bản, nó yêu cầu công cụ Java của tôi thực hiện những thứ như hiển thị sprite hoặc chơi âm thanh.
Đó là khi tôi nghĩ về điều này.