2010-03-31 23 views
6

Nhà phát triển Java thời gian dài ở đây, nhưng tôi đã dành nhiều thời gian hơn làm việc với Ruby trong 3 năm qua hoặc lâu hơn khi các ứng dụng web đi. Tôi thực sự thích nó, nhưng có những lo ngại tôi đã phát hiện ra rằng tôi sẽ không bao gồm ở đây.Các thư viện và tiện ích Java cần thiết cho người dùng ngôn ngữ động trở về là gì?

Bây giờ tôi đã tìm thấy Play! framework, tôi vui mừng về viễn cảnh có trải nghiệm giống như Rails với tốc độ và độ tin cậy của Java. Ngoài những gì Play! cung cấp ra khỏi hộp, tôi đang tìm kiếm các khuyến nghị về "không thể bỏ lỡ" các thư viện và công cụ cho nhà phát triển Java được sử dụng để thực tế, kinh nghiệm năng động. Tôi đã tìm thấy Project Lombok, trông giống như một cách rất hấp dẫn để loại bỏ rất nhiều các tấm nồi hơi, tiếng ồn Java không cần thiết. Tôi nên biết điều gì khác? Tôi biết Google đã phát hành khá nhiều thư viện trong ba năm qua mà tôi đã nghe nói đến trên Java Posse, nhưng tôi không thể nhớ chính xác chúng là gì. Tôi chắc chắn rằng tôi đã bỏ lỡ những người khác trong sự vắng mặt của tôi.

Vì vậy, điều gì tạo nên hộp công cụ Java cần thiết của bạn trong những ngày này?

Cảm ơn câu trả lời của bạn!

Trả lời

5

Tôi muốn nói Guava là PHẢI. Bạn cũng có thể muốn xem guice của google.

Nếu bạn quan tâm đến lập trình đa luồng, sau đó java.util.concurrent là điều bắt buộc ...

+0

Đó chắc chắn là một trong những thư viện mà tôi đang cố ghi nhớ. Cảm ơn! – jbwiv

2

Đã có rất nhiều đang xảy ra với ngôn ngữ mà chạy trên Java Virtual Machine, tận dụng các thư viện Java và tương thích với Java, nhưng đó là biểu cảm hơn. Hãy xem JRuby (chạy Rails), Groovy (và giống như Rails Grails), Clojure, Jython (triển khai Python) và thậm chí là Javascript (xem trình thông dịch tê giác, được viết bằng Java).

Đặc biệt thú vị là Scala, sự kết hợp rất thanh lịch của lập trình hướng đối tượng và lập trình chức năng. Scala gần như nhanh như Java, có khả năng tương tác tốt nhất với Java và rất rõ ràng. Các chương trình Scala có thể ngắn hơn nhiều so với các chương trình Java. Khung Lift có thể so sánh với Rails trong thế giới Scala.

+1

Tôi rất quen thuộc với JRuby và Groovy. Tôi thích cả hai, nhưng Grails chỉ đơn giản là một veneer Groovy trên một tập hợp các dự án Java phức tạp, và các vấn đề gỡ lỗi có thể là một cơn ác mộng. Tôi đoán những gì tôi đang yêu cầu là các thư viện và công cụ cụ thể java. Tôi đã làm điều ngôn ngữ năng động trong một thời gian ...nhưng tôi đã sẵn sàng ít nhất thử nghiệm với gõ tĩnh và java một lần nữa ;-) – jbwiv

+0

(Scala được gõ tĩnh nhưng sử dụng suy luận kiểu để làm cho nó cảm thấy giống như một ngôn ngữ động.) –

+1

Trên mặt trước thư viện, hãy xem Google Bộ sưu tập (một phần của dự án ổi @Zwei chỉ đến). Tôi đã thực sự hài lòng với iBatis (một người quản lý bền bỉ) và Restlet (một khuôn khổ để hỗ trợ các ứng dụng web RESTful và các dịch vụ web). Tôi cũng đang sử dụng thư viện JSON JSON của Google. –

1

Tôi luôn có một mắt trên commons-lang. Rất nhiều thứ khó chịu đã được đóng gói trong các lớp học. Nó giúp cho ví dụ để viết bằng và hashcode. Tôi đang so sánh với projectlombok nó hiện nó tại thời gian chạy thông qua sự phản ánh, nhưng với khả năng loại trừ các thuộc tính đặc biệt.

Đối với đồng thời, bạn có thể xem trên Akka, có sẵn cho Scala và Java. Tôi không bao giờ có thể thử nghiệm nó, nhưng tôi nghe một phiên trên JAX về nó và nó có vẻ là tốt.

0

Để làm cho phần mềm phi web của tôi "mở", tôi luôn thêm (embeeded) Jetty và gần đây RESTEasy. Tạo một API "restfull" của trẻ.

1

Hôm nay, tôi đã tìm thấy lambdaj mang đến cho bạn nhiều khả năng giống như kiểu groovy. Tôi không có kinh nghiệm với nó, nhưng tôi nghĩ rằng nó có giá trị để có một cái nhìn gần hơn về nó.

Các vấn đề liên quan