2010-07-16 16 views
5

Tôi muốn phát triển một số ứng dụng cho JVM bằng cách sử dụng một ngôn ngữ súc tích, súc tích. Các lựa chọn phổ biến nhất cho điều này dường như là Jython, JRuby, Groovy, và có thể là Clojure.Tại sao không tê giác cho các ứng dụng JVM?

Tê giác dường như nhanh và rất ổn định, nhưng tôi không thấy sách về phát triển tê giác và ít thảo luận. Tại sao dường như ít sử dụng JavaScript cho các tập lệnh nhúng khác?

Chỉnh sửa: Tôi đã tìm thấy this câu hỏi cung cấp thông tin về khả năng phát triển dựa trên Rhino.

Trả lời

5

Tôi đã sử dụng Rhino như một phần của trình thông dịch VoiceXML cấp sản xuất được viết bằng Java và chạy trên JVM. Nó hoạt động rất tốt cho mục đích này. Nếu tôi đã thực hiện lại thông dịch viên này từ đầu, tôi sẽ dựa vào việc phát triển nhiều hơn nữa trong JavaScript. Vì vậy, nó chắc chắn là một lựa chọn. Bạn sẽ cần phải khám phá cách các thư viện xung quanh trưởng thành như thế nào cho khu vực ứng dụng của bạn (bạn luôn có thể viết logic gọi từ các thư viện JavaScript đến Java, nhưng điều đó có thể quá mất thời gian).

Nhưng tôi cũng đồng ý với @Peter Recore: làm cho các ngôn ngữ JVM khác có giao diện thứ hai. Tôi rất ấn tượng với ngôn ngữ Scala đối tượng chức năng: hiệu suất của nó gần bằng Java, và nó có rất nhiều sức mạnh biểu cảm.

Cập nhật: Sách hay để đọc trên JavaScript là: JavaScript: The Definitive GuideJavaScript: The Good Parts. Các công cụ cụ thể chỉ Rhino bạn sẽ cần là here.

3

Tôi chưa bao giờ sử dụng Rhino vì vậy tôi không thể đưa ra lý do kỹ thuật, nhưng như một lập trình chung, tôi có thể cung cấp lên một lý thuyết tâm lý pop:

Đối với hầu hết cuộc sống của nó, javascript đã đúng một phía khách hàng ngôn ngữ, ít nhất là trong đầu người. Thậm chí tệ hơn, nó có vẻ như dường như là giống như một cái crappy, bởi vì luôn có vấn đề trên các trang web với javascript. Những vấn đề này không nhất thiết phải là lỗi của ngôn ngữ rất nhiều như cách các trình duyệt thực hiện nó, cách chúng tổ chức dom, và những gì chúng ta có thể truy cập thông qua javascript. Nhưng trong đầu của chúng tôi, chúng tôi bắt đầu nghĩ rằng "javascript có vấn đề" hoặc thậm chí chỉ "javascript được giới hạn trong những gì nó có thể làm". Vì vậy, mặc dù tất cả các phép thuật cấp cao mà một số người có thể làm với nó, nhiều người trong chúng ta nghĩ javascript như một ngôn ngữ đồ chơi, từ những ký ức ban đầu của chúng ta về trang web mà tất cả những gì nó có thể làm là thay đổi hình ảnh trên một con chuột di chuột. .

Cuối cùng, để một ngôn ngữ trở nên phổ biến, (đặc biệt là khi thiếu một nhà tài trợ công ty lớn), nó cần phải có một số lợi ích hữu hình so với những người hiện có. Đã có rất nhiều ngôn ngữ, khung công tác và thời gian chạy phía máy chủ cạnh tranh để mọi người chú ý. Điều gì là đặc biệt về javascript mà mọi người nên vứt bỏ đầu tư của họ trong công nghệ X mà họ đã sử dụng? (đó không phải là đào tại js, chỉ cần thực phẩm cho tư tưởng)

+0

cũng có, bạn có coi là scala không? Nó không phải là năng động một cách nghiêm ngặt, nhưng mang lại cho bạn hầu hết các lợi ích của một ngôn ngữ năng động anyway. –

+0

Tôi thích tạo mẫu với Lua. Ngữ nghĩa JavaScript đủ gần để cho tôi những ánh nắng ấm áp. – user287424