2008-12-03 8 views
11

Jestem programistą ASP.NET z ostatnich 5 lat i wciąż go kocham. W powietrzu jest dużo dobrych głosów o Ruby on Rails. Chcę zapytać o społeczność, Czy warto spróbować nauczyć się Ruby On Rails jako programisty WWW ASP.NET w następnym punkcie widzenia.Przeprowadzka w kierunku Ruby on Rails z ASP.NET

  1. skalowalność
  2. Dokumentacja
  3. Społeczność
  4. Hosting Solutions
  5. wdrażania ETC.

Odpowiedz

10

Jestem teraz w tobie, ponieważ uczę się RoR po komercyjnym rozwijaniu w .NET przez 5 lat. Oto moje dwa centy:

  1. Skalowalność: Wierzę, że szyny można skalować całkiem dobrze, dostępne są liczne opcje, takie jak klastry nierasowych w systemie Linux.
  2. Ten jest nieco gorszy niż na .NET. Ale społeczność jest bardzo dobra i nigdy nie znajdziesz się w poszukiwaniu dobrej drogi.
  3. Zobacz wyżej (jest znakomicie)
  4. Hosting nie stanowi problemu: dostępne są liczne opcje hostingu.
  5. Znajduję przejście od rozwoju do testowania, a następnie do produkcji lepiej pomyślane w Ror niż w ASP.NET.
+1

Informacje na temat 5. Wdrożenie jest łatwiejsze i głupie przy użyciu Capistrano. Tak czysto, tak łatwo, tak szybko, kocham to =) – emzero

14

Podejrzewam, że to ASP.NET MVC. W ten sposób możesz trzymać się platformy .NET Framework, a mimo to uzyskać niektóre z rzeczy, które prawdopodobnie chcesz z RoR.

ASP.NET MVC jest bardzo lekki i łatwy do skalowania z niektórymi oferowanymi przez niego API (przechowywanie SQL dla sesji, a nawet Microsoft Velocity).

ASP.NET MVC ma wiele wsparcia ze strony społeczności, dzięki czemu ma dużo dokumentacji i opinii od społeczności i samego Microsoft.

Partie. Aby uzyskać więcej informacji, sprawdź numer http://www.codeplex.com/ASPNET.

Cóż, ASP.NET MVC może być uruchamiany z użyciem bin. Dopóki twój host obsługuje ASP.NET 3.5, nie potrzebujesz niczego więcej. Nie muszą mieć zainstalowanego programu ASP.NET MVC w jakikolwiek sposób. Więc jeśli chcesz, możesz łatwo użyć hosta współdzielonego.

Wdrożenie jest bardzo proste dzięki ASP.NET MVC i zmianom wprowadzanym w Visual Studio 2010 w celu łatwiejszego wdrażania witryn internetowych za pośrednictwem "pakietów". Obecnie utrzymuję 2 witryny ASP.NET MVC i znajduję je z bin-deployment tak, jak w zwykłej witrynie ASP.NET WebForms.

1

Nie wiem nic o części skalowalności, ale osobiście zacząłem uczyć się Ruby On Rails od ASP.NET jakiś czas temu. Naprawdę ciężko było mi znaleźć jakąś dobrą dokumentację - dokumentacja klasowa na stronie Railsa była naprawdę kiepska w moich oczach, a ja miałem proste pytanie o to, jakie argumenty można włożyć w link akcji. Ale może to tylko ja nigdy nie znalazłem odpowiedniego miejsca. Ale osobiście uważam, że dokumentacja ASP.NET jest lepsza niż szyny - przynajmniej kup książkę, uważam, że to dobra droga.

Numer 3. Jestem pewny, że istnieje bardzo dobra pomoc dla społeczności w zakresie torów, więc musisz znaleźć odpowiednie forum lub inne media, które pasują do twoich potrzeb - może to, co zrobiłem źle.

Numer 4. Istnieje wiele rozwiązań hostingowych dla Railsów, ale nie tak dużo jak ASP.NET czy PHP. Myślę, że musisz zbadać to samo i dowiedzieć się, czy jest coś, co pasuje do ciebie.

Numer 5. Ruby powinny być bardzo łatwe do wdrożenia, ma on pojęcie bazy rozwojowej, testowej i produkcyjnej. Korzysta z migracji, więc aktualizacje w schemacie bazy danych są bezproblemowe - to bardzo fajne. Jest to skrypt, więc powinno to być kwestią xcopy z komputera programistycznego na serwer produkcyjny.

Powodem, dla którego powinieneś wybrać Ruby on Rails, jest to, jeśli podoba Ci się wzór MVC. Wzorzec MVC jest geniuszem, a rubin jest świetnym językiem, gdy się go uczy. Może zanurkuj w ASP.NET MVC i zobacz, jak to jest - wtedy może przenieś się do Rails. Wtedy musisz nauczyć się nowego języka, a nie nowej arhitecture, framework i języka w tym samym czasie.

Przypuśćmy, że jest to od programisty ASP.NET, który powąchał Rails, ale zrezygnował, nie był w stanie znaleźć naprawdę dobrej dokumentacji i zawsze były jakieś dziwne błędy z edytora lub Railsów - ale to prawidłowo rzecz nowicjuszka :)

Ale jeśli masz czas, koniecznie go naucz. Niektórzy deweloperzy twierdzą, że powinniśmy uczyć się jednego nowego języka w ciągu roku, a Ruby jest świetnym kandydatem do tego.

3

1) skalowalność

szyn jest tak samo jak każdy inny skalowalne stosu internetowego. Jedyna różnica polega na tym, że pojedynczy serwer może zostać przeciążony i wymaga podziału na dwa serwery wcześniej niż w .NET, ze względu na wolniejszą wydajność środowiska wykonawczego ruby. W praktyce nie stanowi to problemu.

2) Dokumentacja

Microsoft nie zapewniają lepszej dokumentacji dla bibliotek bazowych niż Ruby lub Rails, ale Ruby/szyny te są nadal na ogół bardzo dobre. Uważałbym, że ruby ​​/ raile są tu zwycięzcami z prostego faktu, że zawsze można zobaczyć źródło wszystkiego. Żadna ilość dokumentacji nie jest substytutem możliwości zobaczenia, co się dzieje.

3) Społeczność

Byłem niczym wrażeniem wsparcia społeczności wokół szyn. Nie wiem, co jeszcze mogę tam powiedzieć.

4) Hosting Solutions

Od Phusion pasażera został zwolniony, wydaje się być łatwiejsze w tych dniach znaleźć szyn hostingowych niż jest znaleźć Hosting ASP.NET. To z biegiem czasu zmieni się tylko w stronę szyn, ponieważ firmy hostingowe nie muszą płacić tantiem za system microsoft, aby wdrażać szyny na serwerach linuksowych.

5) Wdrożenie ETC.

Capistrano (najczęstsze rozwiązanie do rozmieszczania na szynach) pokonuje wszystko inne.

+0

Dla punktu 2) Dokumentacja: proszę zauważyć, że ASP.NET MVC jest teraz open source patrz tutaj - http://aspnet.codeplex.com/ –

+0

Podczas gdy to jest wspaniałe, że MVC jest open source, rzeczywiste ramy MVC to tylko bardzo mały fragment stosu. Wcześniej czy później będziesz musiał zobaczyć źródło 'HttpContext' lub inne wbudowane, i wrócisz do deski kreślarskiej. Odbłyśnik pomaga, ale jest słabym zamiennikiem rzeczywistego kodu źródłowego. Z rubinem i szynami można zobaczyć źródło w dół. –

8

W pełni zgadzam się z postem Chada.

Byłem w połowie rozwoju aplikacji w szynach, a teraz zrobiłem kompletne 360 ​​i ponownie rozważyłem po zagłębieniu się w ASP.NET MVC na moje codzienne zobowiązania.

Teraz zmieniam kursy i zajmuję się ASP.NET MVC dla wszystkich moich osobistych projektów, myślę, że obie są naprawdę zadziwiająco porównywalne teraz, ponieważ myślę, że MS dobrze przyjrzało się zestawowi funkcji Ruby on Rails i zapewniło im bardzo dokładnie dopasować funkcje. W końcu, jeśli tworzysz projekt z LINQ 2 SQL/EF, ASP.NET MVC i potencjalnie Dynamic Data (jeśli potrzebujesz tego typu rzeczy), naprawdę nie mogę wymyślić żadnych istotnych powodów wyboru Railsów przez .NET, jednak MOŻEMY wybrać powody, dla których warto wybrać .NET over rails - po tym, jak wszystkie ręce oprą się bogatym doświadczeniem debugowania za pomocą VS.NET, bogatym wsparciem intellisense i watcher/quickwatch oraz ASP.NET MVC framework wspierają Html Action Helpers, bindery modeli, wsparcie i zachętę do testowania jednostkowego, a teraz z włączeniem wyników JQuery i JSON, jesteś praktycznie nie do powstrzymania.

Przypuszczam, że oprócz oczywistych kosztów hostingu/licencjonowania, preferencji języka Ruby i innych osobistych preferencji, takich jak np. Open source itp., To naprawdę twój wybór.