2009-05-01 44 views
19

Tôi đang tìm một khung công tác web Ruby nhẹ và đã đi qua SinatraRamaze. Cả hai dường như rất nhẹ, súc tích và đơn giản. Nhưng tôi không biết đủ để nói ra những khác biệt chính là gì. Có lẽ ai đó có kinh nghiệm với một hoặc cả hai đều có thể nhận xét?Sự khác biệt chính giữa Sinatra và Ramaze là gì?

Trả lời

7

Sinatra không thực thi MVC.

+2

Tuy nhiên, bạn có thể triển khai mô hình MVC quanh Sinatra dễ dàng. –

+5

Ramaze có thực thi không? "Trong số đó, một dự án mới sử dụng mẫu MVC. Tuy nhiên, điều tuyệt vời về Ramaze là bạn không bị buộc phải sử dụng mẫu này." - http://ramaze.net/documentation/index.html – ciastek

44

nhẹ của Ruby Khác khuôn khổ

Tôi thích _why's Camping (nay là duy trì by the community) mà phải là nhẹ nhất trong số họ tất cả (để biết gần đây [> = v1.9] thấy Camping links trên Camping wiki, Eleanor McHughe của ' Going off the Rails 'hoặc [v 1.5] Jeremy McAnally là Going Camping slides hoặc Camping screencasts, Camping podcast và Nathaniel Talbott's Why Camping Matters, nhưng đọc số Camping mailing list để biết thay đổi và thông tin phiên bản hiện tại và try the latest blog example). Bạn cũng có thể bây giờ read the latest Camping api docs.

Nhưng tôi đã thực hiện một cuộc rà soát lớn 3 ngày thông qua tất cả các khung công tác Ruby nhẹ hơn mà tôi có thể tìm thấy trông hợp lý hoặc cập nhật (tôi đang cố gắng tìm một cách để dạy học sinh những kiến ​​thức cơ bản) để giúp bạn thực hiện tâm trí của bạn, sau đây (với cắm trại) đứng ra từ đống (với ít nhất một tên nhà phát triển để bạn có thể kiểm tra xem chúng ra quá) ...

Để bắt đầu, những người đẹp Ramaze sử dụng để có list of Ruby frameworks but the link is gone và đây là một bài viết hay có tiêu đề 10 Alternative Ruby web frameworks. Ngoài ra còn có một số Ruby-forum discussion about Camping and Merb cũng bao gồm các ORM thay thế. Hãy nhớ rằng một số bên dưới là Post-Merb và mở rộng cách tiếp cận đó.

Sinatra (Blake Mizerany)

Không MVC, không ORM mặc định. Tài liệu tốt. 'Một ứng dụng web toàn có thể được gói gọn trong một file Sinatra đơn'

Sinatra đánh giá và các liên kết:

Ramaze (manveru)

Ramaze chạy tốt với Ruby 1.9.

đánh giá Ramaze và các liên kết:

Wuby (Chris Matthieu)

Từ đánh giá : "không cần ứng dụng hoặc đá quý của bên thứ ba để chạy các ứng dụng Wuby và thư viện Wuby chứa tất cả mọi thứ cần thiết để chạy HTTP daemon và bắt đầu yêu cầu phân phát", "example code có một chút cảm giác về PHP".

Wuby đánh giá và các liên kết:

IOWA (Kirk Haines)

Trong một article on Ramaze by Antonio Cangiano ông viết: "Nếu bạn có ý nghĩa bởi 'switch' chỉ là một công tắc chung 'từ ngôn ngữ lập trình/khung/ngôn ngữ lập trình hiện tại của tôi ', tôi không có câu trả lời thực sự.Ví dụ sẽ là khuôn khổ IOWA không được biết đến nhiều từ Kirk Haines. Nó được sử dụng trong sản xuất trong nhiều năm, đã chết ổn định, rất nhanh (nhanh hơn cả Ramaze), nhưng tài liệu và tiếp thị của nó không tồn tại. Tôi không tin vào việc theo sau một sự cường điệu (ngay cả khi đó là Ramaze) chỉ vì mục đích mát mẻ, tôi cần phải có một trường hợp sử dụng để chuyển sang một cái gì đó mới. ”

Tài liệu thưa thớt mặc dù Hal Fulton bao gồm IOWA trong The Ruby Way , và trong khi liên kết dưới đây cho biết mọi thứ đã chuyển đến Swiftcore, điều đó lần lượt nói rằng chúng sắp xuất hiện trên GIT, nhưng vẫn còn trống vào lúc 06jul2009. Để biết thêm về các vấn đề IOWA ngày trên RubyForge là năm 2004 ... ?

IOWA đánh giá và các liên kết:

+0

Cảm ơn một bài đăng tuyệt vời, Dave. Sẽ được sử dụng này để tham khảo bản thân mình. –

+0

Vui mừng 3 ngày đã mất của tôi trong thế giới framework Ruby đã tỏ ra hữu ích! –

+0

Tôi đến muộn bữa tiệc, nhưng: AFAIK, Ramaze không yêu cầu Ruby 1.9. Nó sẽ chạy tốt dưới 1,8. – Pistos

7

Tôi nghĩ rằng đó là một câu hỏi thực sự của hương vị giữa hai Sinatra và Ramaze. Cả hai đều tốt, cả ánh sáng.

Điểm khác biệt lớn nhất là Ramaze là MVC nhiều hơn. Mặt khác Sinatra hoạt động giống như DSL và là RESTful.

Tôi khuyên bạn nên đọc GET_STARTED trong số đó sẽ không mất nhiều hơn một vài phút và bạn sẽ thấy sự khác biệt là gì.

Tôi personaly thích cả hai (với sở thích của Ramaze), nhưng một điều có thể giúp bạn đưa ra quyết định là Sinatra ít phổ biến hơn (tôi nghĩ), vì vậy bạn có thể tìm thêm tài liệu về web.

Mặt khác, bạn có thể sử dụng Ramaze và giúp làm cho nó phổ biến hơn.Kênh IRC cho Ramaze có đầy đủ mọi người (kể cả tôi), những người sẽ vui lòng giúp bạn và trả lời tất cả các câu hỏi của bạn.

Hy vọng điều đó sẽ hữu ích. Mig

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