2010-01-14 19 views
5

Tôi nghe thấy claims rằng Ruby on Rails làm cho các ứng dụng web nhanh hơn gấp mười lần để viết. Điều này có thực sự đúng không? Họ chỉ cần tạo ra một loạt các công cụ để làm cho những thứ đơn giản nhanh chóng và những thứ khó có thể (không cần phải tái cấu trúc nghiêm túc)? Nó có thể xử lý các vấn đề web khó khăn như một tìm kiếm nâng cao và AJAX webgrids? Không thể các ngôn ngữ khác chỉ sử dụng các kỹ thuật của Rails và chỉ nhanh như mã?Ruby on Rails có thực sự MUCH nhanh hơn để phát triển mã không?

Tôi không cố gắng đánh bắt một cuộc chiến thánh thiện bằng ngôn ngữ. Tôi thậm chí không hỏi nếu nó tốt hơn/tồi tệ hơn các ngôn ngữ khác liên quan đến cú pháp, bảo mật, tốc độ thực thi, sử dụng bộ nhớ, vv Câu hỏi này chỉ là về thời gian để mã. Hãy nói rằng tôi có một ý tưởng cho một webapp thực sự mát mẻ (hơi phức tạp) và muốn nó ra càng sớm càng tốt, Ruby on Rails sẽ cho tôi một lợi thế hay là tuyên bố đó chỉ là quảng cáo? Bạn sẽ sử dụng cái gì?

Trả lời

5

Martin Fowler đã thực hiện survey on Ruby on Rails productivity bằng cách yêu cầu 30 dự án dẫn đến ước tính chủ quan của họ về năng suất của RoR so với "công cụ chính thống tốt nhất mà bạn biết". Biểu đồ dường như thể hiện sự cải thiện ít nhất gấp 2 lần.

Như @hgimenez lưu ý, khảo sát này là một phần của Fowler's Ruby at ThoughtWorks, điều này làm sáng tỏ rất nhiều về vấn đề này.

+0

Điều tra đó cộng với bài viết này (http://martinfowler.com/articles/rubyAtThoughtWorks.html) là phải đọc. – hgmnz

+0

Rất nhiều câu trả lời hay về câu hỏi này, nhưng bài viết này đã đưa ra một số thông tin chi tiết tốt nhất. Mặc dù, tôi phải đặt câu hỏi về sự thiên vị của nó. – User1

4

Mười lần có lẽ hơi căng, nhưng tôi phải nói rằng phát triển với RoR là đáng chú ý, nhanh hơn đáng kể so với ASP.NET, đó là bộ công cụ phát triển web khác của tôi.

3

tôi đã tìm thấy nó được nhanh hơn một chút cho các dự án đơn giản tôi đã làm việc trên vì

  1. cú pháp của Ruby là hơn gọn gàng hơn một số ngôn ngữ khác như Java và C#
  2. công cụ cào tự động hóa rất nhiều các thiết lập tập tin công việc
  3. Rails sử dụng quy ước về cấu hình, do đó, miễn là bạn làm theo các giả định của mình, có rất nhiều ít mà bạn cần phải cấu hình

Chén s là một psuedo-port of Rails với ngôn ngữ Java/Groovy, và cung cấp các lợi ích tương tự (ngôn ngữ nhỏ gọn hơn, một công cụ kiểu dao cạo tương tự, và quy ước về cấu hình).

Lưu ý: nếu bạn đã khá giỏi ngôn ngữ hoặc khuôn khổ khác và thời gian đưa ra thị trường cho dự án này là mục tiêu cuối cùng của bạn, có thể bạn nên gắn bó với những gì bạn biết. Nếu đó là một kinh nghiệm học tập, thì tôi nói hãy thử RoR.

20

Giả sử tôi có một ý tưởng về một ứng dụng web thực sự thú vị (hơi phức tạp) và muốn sử dụng càng sớm càng tốt, Ruby on Rails sẽ cho tôi một lợi thế hay tuyên bố đó chỉ là quảng cáo?

Tôi thấy rằng Rails có đường cong học tập khá dốc qua trường hợp tầm thường và tài liệu hơi thưa thớt. Dự án đầu tiên của bạn sẽ không nhanh hơn, đặc biệt là nếu nó hơi phức tạp.

Nếu bạn đang cố gắng đưa thứ gì đó ra thị trường và thời gian là bản chất, thời gian bạn sẽ mất để học Rails và sau đó tái cấu trúc tất cả các lỗi newbie của bạn có thể sẽ lớn hơn năng suất bạn có được từ đường ray.

Tôi thích Rails, và nghĩ rằng đó là giá trị học tập, nhưng kết hợp áp lực lịch với công nghệ chưa biết là một công thức cho thảm họa.

Nếu bạn cần truy cập nhanh ngay bây giờ, hãy sử dụng những gì bạn biết. Nếu bạn có thời gian, hãy học nó để tìm hiểu Ruby và Rails đúng cách.

+1

Hoàn toàn chính xác. Bạn không nên sử dụng "dự án sản xuất" như một "dự án học tập" – kikito

+0

+1 Tôi cũng thích câu trả lời này. Tôi ước tôi có thể chọn nhiều hơn một câu trả lời. – User1

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