Có phải Ruby on Rails / Grails là khung nhanh nhất để nhận trang web nhanh chóng?


10

Tôi đang xem xét sử dụng Grails cho một trang web mới, nhưng đang mở cho các ngôn ngữ và khung lập trình mới / khác. Tôi đã thực hiện phát triển bằng J2EE / JSF2, ASP.NET và PHP. Grails hay Ruby on Rails có phải là cách tốt nhất để có được chức năng và chạy nhanh không?

Một số suy nghĩ ban đầu:

  • DJango trông giống với RoR / Grails và tôi sẽ xem xét nó
  • GWT là một khái niệm thú vị nhưng có vẻ như thời gian quay vòng khá nhanh

Cảm ơn, -Jon


2
Nếu bạn đã thực hiện phát triển với J2EE / JSF2, ASP.NET và PHP, thì bạn sẽ có thể có được một trang web và chạy nhanh hơn với một trong số đó so với Grails, Ruby on Rails hoặc bất kỳ khung nào khác / ngôn ngữ mà bạn chưa từng sử dụng trước đây.
Carson63000

2
Cách nhanh nhất để có được một trang web và chạy là cài đặt wordpress hoặc mediawiki. Điều này hoàn toàn không mở rộng nếu bạn cần thêm chức năng, nhưng có rất nhiều trang web sẽ được phục vụ tốt bởi một giải pháp + plugin bổ sung sẵn có.
Sean McMillan

Câu trả lời:


13

Như với tất cả các câu hỏi thuộc loại này, câu trả lời là "nó phụ thuộc". Các yếu tố cần xem xét bao gồm mức độ thoải mái của bạn với ngôn ngữ / khung và những tính năng mà dự án yêu cầu. Phải nói rằng, tôi đã xây dựng các trang web bằng cách sử dụng một số khung, mỗi khung có điểm mạnh và điểm yếu riêng:

Chén

Nếu tôi cần nhanh chóng có được một trang web cho bất cứ điều gì chuyên nghiệp , Grails có lẽ sẽ là lựa chọn đầu tiên của tôi. GORM là một ORM đơn giản và trực quan nhất mà tôi đã thử, mô hình MVC được thực hiện rất tốt, có 0 cấu hình để bắt đầu mã hóa (không phải lo lắng về URL, bản vá DB, bất cứ điều gì), lặp lại rất nhanh (chỉ cần làm mới trang), tích hợp Java liền mạch (một điều tốt trong thế giới kinh doanh) và một số bổ trợ tuyệt vời (ví dụ: Tìm kiếm là một điều hay). Nhược điểm lớn nhất là lưu trữ có thể khó tìm (và đắt tiền).

Viên ngọc trên tay vịn

Trải nghiệm của tôi với RoR rất giống với Grails: MVC được thực hiện tốt. Về mặt tích cực, nó có một cộng đồng lớn hơn, vì vậy tài nguyên trực tuyến (tài liệu, Câu hỏi thường gặp, mẫu mã, v.v.) rất phong phú, có TẤN các plugin, Ruby linh hoạt hơn / biểu cảm / "vui nhộn" hơn, và đó là dễ dàng hơn nhiều để tìm thấy lưu trữ (đặc biệt cho các dự án cá nhân); về mặt tiêu cực, quản lý / thiết lập phụ thuộc rất tệ (Tôi đã sử dụng RubyGems trên Windows, Ubuntu, Fedora và OSX và gặp phải các vấn đề không hề nhỏ trên mỗi cái), có cấu hình / chi phí cao hơn một chút so với Grails (cụ thể là, xử lý các tệp di chuyển db.rb và hàng tấn) và rõ ràng, RoR có một số vấn đề về khả năng mở rộng nghiêm trọng.

PHP (bao gồm khung CakePHP)

Nếu tôi cần nhanh chóng hack một cái gì đó hoặc xây dựng một trang web cho mục đích cá nhân , thì có lẽ tôi sẽ đi với PHP. PHP là ngôn ngữ dễ học và triển khai nhất: tải xuống bất kỳ gói LAMP tiện lợi nào ngoài đó, nhấp một vài lần và bắt đầu hack đi. Cộng đồng lớn hơn RoR, vì vậy tài liệu rất phong phú và có vô số plugin (dễ dàng "cài đặt" bằng cách chỉ cần thả vào tệp php và làm mới trang). Ngôn ngữ rất đơn giản để học, nhưng một số điều trong PHP hoàn toàn lạ lùng và cần rất nhiều kỷ luật để tránh mã xấu. Khung CakePHP thực thi một mô hình MVC đẹp để giúp mọi thứ có trật tự và phần lớn là ngang bằng với RoR, mặc dù cá nhân tôi thấy nó hơi không trực quan.

Java (servlets, JSP, JSTL, struts, Velocity)

Tôi đã xây dựng nhiều trang web bằng cách sử dụng các công nghệ Java servlet và tôi có thể thành thật nói rằng không có lý do chính đáng nào để chọn chúng cho bất kỳ trang web mới nào hiện nay. Chúng có một đường cong học tập dốc, hàng tấn cấu hình để chiến đấu với (địa ngục XML), lặp lại chậm do nhu cầu triển khai lại mọi thứ mọi lúc (trừ khi bạn sử dụng JRebel), mã dài dòng và không có "miễn phí" về chức năng. Tôi đã chơi xung quanh với Play! FrameworkSpring Roo một chút và cả hai đang thực hiện một số thứ rất tuyệt vời với ít nhiều mã Java "thuần túy" và đáng để xem xét thêm.


4

Khi sử dụng CakePHP, tôi có thể quay một ứng dụng web nhanh hơn ... một ... anh chàng thực sự nhanh. Dù sao, nó rất nhanh. Thả các tệp trong thư mục gốc web của bạn, định cấu hình hai tệp (khoảng ba dòng để thay đổi trong mỗi tệp). Và bắt đầu viết mã.

Vì nó ưu tiên quy ước về cấu hình, nên sẽ cần một số kinh nghiệm để đảm bảo rằng nó được cấu hình tối ưu, nhưng tôi đảm bảo rằng với mức độ kinh nghiệm ngang nhau, CakePHP có thể triển khai nhanh nhất trong mọi khuôn khổ, có thể là giai đoạn .

Điều đó nói rằng, dự án CakePHP ban đầu là một bản sao của đường ray PHP (không còn nữa), vì vậy tôi chắc chắn rằng đường ray cũng nhanh chóng được triển khai.


Cảm ơn vì sự sáng suốt. Tôi đã xem qua CakePHP trong quá khứ và dường như nó sử dụng các khái niệm tương tự như RoR.
Jon Onstott

Đồng ý +1 khi giới thiệu tôi với CakePHP.
Jeremy

Roxxors CakePHP.
Stephen

3

Tôi đã làm việc với khung công tác ASP.NET MVC được một thời gian và tôi thấy nó là một khung công tác khá tốt. Cực kỳ dễ sử dụng, đặc biệt nếu bạn đã quen thuộc với .NET. Khung này đã phát triển nhanh chóng kể từ khi phát hành vào năm 2009, bản xem trước MVC 3 đã được phát hành ra công chúng gần đây. Tôi nghĩ rằng MS đang làm tất cả những điều đúng đắn với khung công tác ASP.NET MVC.


1
MVC thật tuyệt, và nếu bạn đọc các bài đăng SO của tôi, bạn biết tôi là một người hâm mộ, nhưng ngay lập tức, nó không thể nhanh như Rails để đưa một trang web điều khiển DB lên khỏi mặt đất. Tôi nghĩ rằng MVC có thể là một lựa chọn tốt hơn Rails cho một đoạn đường dài (tùy thuộc vào nhu cầu của bạn), nhưng tín dụng khi đến hạn: Rails giúp trải nghiệm vượt trội hơn.
Craig Stuntz

@Craig: Không có hứng thú và mong muốn tìm hiểu điều gì đó mới, tôi muốn chọn một dự án nhỏ và bắt đầu và chạy trong MVC và Rails ngay bây giờ để xem họ so sánh như thế nào.
ysolik

Đọc điều này vào năm 2012 thực sự mang lại một giọt nước mắt cho tôi. Tôi nhớ rằng bắt đầu sử dụng asp.net mvc khi nó vừa xuất hiện và thấy nó rất mạnh mẽ những ngày này thật tuyệt vời. Làm cho tôi trở thành một người hâm mộ phát triển web và cho phép tôi dễ dàng tìm hiểu CakePHP và Ruby on Rails.
serserg

1

Tôi chưa sử dụng tất cả mọi thứ, nhưng Rails khá nhanh. Tôi hy vọng Grails cũng vậy vì nó thể hiện triết lý DRY ​​khá tốt. Tôi không biết đủ về các khung ngôn ngữ động khác để nói.

Ngay cả với các chiến lược tạo mã tốt, ASP.NET của tôi (webforms) dường như không hiệu quả.


1

Tôi đã tìm hiểu về Django và Rails và tìm thấy Rails theo ý thích của tôi. Điều đó đang được nói, tôi thích ASP.Net MVC 2 tốt hơn nhiều so với Rails. Tôi nhanh hơn nhiều về MVC (hoặc thậm chí chỉ là các mẫu web) so với Rails đơn giản vì tâm trí tôi "hoạt động tốt hơn" với C #.

Đối với tôi nó thuộc về những gì bạn biết và những gì bạn thích. Tôi đã nghe từ nhiều người rằng Ruby rất vui, không phải với tôi. C # là niềm vui! Haskell là niềm vui! Nếu bạn không thích ngôn ngữ / khung thì bạn sẽ không nhanh như khung "chậm" hơn mà bạn thích.


Tôi đã thấy rằng Django mất một thời gian để thiết lập đặc biệt là khi bạn phải
Người dùng
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.