Ich habe hauptsächlich in der .NET-Welt entwickelt, aber ich habe ein Projekt, das das Frontend wirklich begünstigen sollte. Viele UI Liebe.
Gibt es einen Mehrwert bei der Verwendung von Ruby On Rails anstelle von MVC3? Wie soll ich zwischen den beiden wählen? Gibt es andere Möglichkeiten, die es sich zu betrachten lohnt?
Ich weiß, Ruby On Rails ist ziemlich populär, aber wie unterscheidet es sich von MVC3?
Ist die Verwendung von Schienen anstelle von mvc3 sinnvoll?
JA. Wenn es nichts gibt, wird es Ihnen eine andere Perspektive geben und Ihre Denkweise über Programmierprobleme erweitern. Es gibt etwas über die Knappheit des Rubins, die Nützlichkeit von Blöcken und das dynamische Verhalten der Sprache, das es Ihnen erlaubt, wirklich anders zu denken.
Wie wähle ich zwischen den beiden?
Wenn das Projekt ein kurzes Projekt ist, dann bleiben Sie bei dem, was Sie wissen. Aber wenn es sich um ein längeres Projekt handelt, kann es sich lohnen, sich mit der Lernkurve der Schienen zu beschäftigen. Die meisten Leute werden Ihnen sagen, dass Schienen schneller als .net mvc zu entwickeln ist. Wenn das Projekt lang genug ist, können Sie sich vielleicht schneller auf Schienen entwickeln, sobald Sie damit vertraut sind.
Das heißt, die Lernkurve für einen Microsoft-Programmierer kann STEEP sein! Wenn Sie ein Unix-Typ sind, dann wird es nicht so schlimm sein, aber wenn nicht, machen Sie sich bereit, über eine Menge verschiedener Themen zu lernen. Die Befehlszeile und Ihre Shell, TDD, Homebrew oder Macports, git statt Subversion, Gems, Bundler, Rvm, Rspec oder einem anderen Test-Framework, etc.
Auch wenn Sie keinen Mac besitzen oder nicht auf etwas * nix achten, sollten Sie vielleicht bei .net bleiben. Nach dem, was ich höre, ist es eine schmerzhafte Erfahrung, Schienen an Fenstern zu entwickeln.
Wenn TDD für Sie wichtig ist, dann ist Schienen der richtige Weg. Auch die Bereitstellung ist viel einfacher auf Schienen.
Das Ökosystem ist etwas, das ein Faktor sein kann, wenn Sie Werkzeuge von anderen verwenden möchten. Rails hat eine riesige Basis von Open-Source-Entwicklern, die viel zur Community beitragen. Wenn Sie vergleichen möchten, schauen Sie sich github.com (für Rails) und Codeplex (für Microsoft) an. Mit dem NuGet-System von Microsoft wird die Microsoft-Seite jedoch möglicherweise ein besseres Ökosystem schaffen. Aber im Moment ist es nicht einmal in der Nähe.
Weitere interessante Optionen?
Wenn Sie eine ziemlich dynamische, datenbankgestützte Website entwickeln müssen, sind rails oder .net mvc gute Optionen. Wenn es etwas viel einfacheres / kleineres ist, dann sind einige einfachere / kleinere Frameworks Sinatra (für Ruby) oder Webmatrix für .net. Sie werden viel schneller mit diesen Frameworks auf den neuesten Stand gebracht.
Wie unterscheiden sich die beiden Frameworks?
Der größte Unterschied, den ich feststellen kann, sind die zugrunde liegenden langues, Ruby für Rails und c # für .net mvc. Ruby ist dynamisch, während c # statisch ist. Rails wird nicht kompiliert, während .net mvc ist. Sie erhalten mehr rohe Leistung aus .net mvc.
Rails ist wirklich mit TDD und BDD im Hinterkopf gebaut. Das letzte Mal, als ich .net mvc 1.0 benutzt habe, war es sehr schwer TDD zu machen.
Bei der Entwicklung wird fast jeder auf .net mvc Visual Studio verwenden, aber ich würde sagen, dass die meisten Rails-Entwickler keine IDE verwenden. Sie benutzen einfach einen einfachen Texteditor (textmate, vim, emacs) und debuggen mit der Konsole.
BEARBEITEN: * Bonus-Tipps *
Wenn Sie mit Schienen beginnen wollen (was ich sehr empfehlen kann), ist der einfachste und gründlichste Weg, das Rails Tutorial von Michael Hartl. Darin erfahren Sie über Ruby / Schienen zusammen mit den folgenden
Sobald du ein gutes Verständnis für Schienen hast, solltest du deine Rubinfähigkeiten verbessern, um wirklich ein guter Schienenentwickler zu werden.
Ruby und RubyOnRails klingt wie es die Rechnung passen würde.
Und wenn Sie wirklich wollten, könnten Sie IronRuby für .NET-Güte verwenden.
Zur Rechtfertigung wurden viele erfolgreiche Sites mit dem Framework geschrieben. Es hat eine nachgewiesene Erfolgsbilanz über MVC3.
Tags und Links asp.net-mvc-3 frontend ruby-on-rails frameworks