2011-07-08 20 views
18

Tôi bắt đầu chơi với playframework gần đây và thực sự thích sự đơn giản.Tại sao khung chơi không được xây dựng trên API Servlet?

Nhưng một câu hỏi dai dẳng tôi đã có là lý do tại sao nó tránh được đặc điểm kỹ thuật servlet cùng nhau? Động cơ chính đằng sau quyết định kiến ​​trúc như thế nào?

Trả lời

10

Từ FAQ

Chúng tôi hoàn toàn nhận thức được rằng chúng tôi đã lựa chọn mà là khá phổ biến trong thế giới Java, và rằng Play không nhắm mắt làm theo tất cả các thông lệ tốt cái gọi là Java ' '. Nhưng tất cả các thành viên trong nhóm Play đều rất có kinh nghiệm Java nhà phát triển và chúng tôi hoàn toàn nhận thức được các lựa chọn chúng tôi đã thực hiện và các quy tắc mà chúng tôi đã phá vỡ.

Bản thân Java là ngôn ngữ lập trình rất phổ biến và không phải được thiết kế ban đầu cho web phát triển ứng dụng. Đây là một điều rất khác nhau để viết một thư viện Java chung và có thể tái sử dụng và để tạo một ứng dụng web . Ứng dụng web không cần thiết kế để có thể sử dụng lại được. Bạn cần ít hơn trừu tượng, ít cấu hình hơn. Khả năng sử dụng lại không tồn tại cho các ứng dụng web , nhưng thông qua dịch vụ web API thay vì cấp bằng ngôn ngữ tích hợp.

Khi thời gian phát triển có xu hướng số không bạn có thể tập trung vào tính năng ứng dụng của bạn và thử nghiệm một cách nhanh chóng, thay vì cố gắng trừu tượng thứ cho sự phát triển trong tương lai.

Phát! các ứng dụng có thể được triển khai dưới dạng ứng dụng web trên các thùng chứa máy chủ web khác, nhưng nó được thiết kế chủ yếu như một khung công tác ngăn xếp đầy đủ; Phát nền tảng. Và, theo ý kiến ​​của tôi, đây là những gì làm cho nó đẹp và nhanh chóng.

+0

như thế nào này có liên quan cụ thể đến api servlet? –

+1

Bạn hỏi: "Động lực chính đằng sau quyết định kiến ​​trúc đó là gì?", Và tôi trả lời: "Play * là * nền tảng". Họ không chỉ muốn biến nó trở thành một khung công tác, hay một số thùng chứa, mà là một ứng dụng ngăn xếp đầy đủ, bao gồm cả máy chủ Web và tất cả. Điểm mấu chốt là bạn không thể so sánh Play với đặc tả servlet vì ngoài việc là Java, chúng không chia sẻ nhiều điểm chung (nếu không). –

+0

Không chắc chắn tôi theo dõi bạn. Trước hết, Play là một hệ thống khung - phần mềm có thể mở rộng và ghi rõ các điểm mở rộng đó. Thứ hai, tôi không so sánh việc chơi với servlet (điều đó sẽ là ngớ ngẩn) Tôi hỏi tại sao lại bỏ API servlet. –

8

Thanh toán Guillaume Bort's blog. (Người sáng lập Play! Framework). Anh ấy giải thích tất cả trên blog của mình.

EDIT: Mối liên hệ đã thay đổi, nhờ procrastinate_later

+1

điều này sẽ vẫn hợp lệ với xử lý không đồng bộ trong servlet 3 api? –

+0

@lamalama đó là một câu hỏi vô nghĩa. Nếu chơi! độc lập với API Servlet, nó độc lập với API Servlet. – EJP

+1

Liên kết của bạn hiện đã bị hỏng, nhưng tôi nghĩ rằng tôi đã tìm thấy bài đăng trên blog tại đây. http://guillaumebort.tumblr.com/post/558830013/why-there-is-no-servlets-in-play –

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