Ruby on Rails vs ASP.NET MVC 3 для .NET Guy? [зачинено]


98

Я дуже новачок у RoR і хочу вибрати між APS.NET MVC3 та RoR. C #, звичайно, простіше для мене, оскільки я це роблю так довго, але мені цікаво, чи є якийсь сенс розглянути можливість використання RoR над .MVC для розробки веб-сайту в реальному світі?

Що ще я отримую з RoR, який я не можу отримати з ASP.NET MVC 3, що варто витратити час на освоєння RoR? Хоча я, можливо, одна з причин, що є доступним плагіном RoR для спільноти, але не здається, що організованість і здається, що крива навчання робити правильні речі буде настільки великою, що практично не заощадить багато часу на newby! Я можу помилитися тут, і я дуже ціную ваш коментар у реальному житті щодо цього? Зауважте, що мені ще належить вивчити ASP.NET MVC, але це швидко звучить для .NET Guy!

Що може запропонувати RoR хлопцеві .NET, що ВІРНО вибирає RoR через ASP.NET MVC 3? і будь ласка, практичні поради! :)


11
Як це питання поза темою чи не справжнє запитання? У будь-якому випадку я додав adviceтег до питання.
Забба,

1
@zabba, чому? Схоже на мене без тегів.
bzlm

1
@bzlm, що таке нетег?
Забба,

2
@zabba лише 95 запитань, без резюме вікі, незрозумілої мети (питання, що вимагають "порад", як правило, не відповідають, а значить, не вітаються згідно із статутом сайту) тощо. :)
bzlm

3
Холодні хлопці! Як "які значення мають значення RoR над .NET MVC для розробки NET?" Не питання? !!! Не замикався на MVC взагалі і просто цікавився відповіддю !!
iCode

Відповіді:


71

Вони обидва фантастичні, і можуть досягти одних і тих же цілей дуже швидко. Я скористався чудовою книгою, щоб навчитися назад, і це було б прямо за вашою алеєю: Rails for .Net Developers

Крім того, я написав пост про поїздку з MVC до RoR на деякий час назад.

Що стосується порівнянь, вони обоє мають сильні сторони, як було описано, але ось декілька, які мені дотримуються:

  • Мені дуже подобається розгортання RoR та прості способи переходу на живі веб-сайти - взагалі жодних скриптів для запуску, лише трохи командного рядка не повинно запускати вас та працювати, як тільки код буде фактично написаний. Якщо ви вибрали RoR, РОЗБУДУЙТЕ КОМАНДІ ЛІНІЙ КОМАНДІВ - це полегшить ваше життя!

  • Як ви вже згадували, плагіни чудові, і їх справді можна використовувати для прискорення роботи.

  • Як .Net dev, MVC буде легким вітром, я б рекомендував використовувати Razor, оскільки він дуже простий і менш захаращений, ніж старий 2.0 без бритви.

  • .Net EF4 можна порівняти майже безпосередньо з ActiveRecord RoR, чудовими системами ORM для роботи з даними.

  • Я виявив, що .Net документація трохи більш послідовна і ретельна.

  • Однією з проблем, які у мене були з RoR, були швидкі та різкі зміни; не так давно вони модернізували до 3.0 на моєму хості, і я не заблокував свою версію - всілякі речі зламалися, поки я не з'ясував новий матеріал (я повинен був заморозити свою версію).

Це не вибір чистого крою - обидва чудові. Оскільки ви вже є .Net dev, я б припустив, що MVC3 був би дорогою дорогою, але обидва легко вивчити.


4
Тепер, коли ASP.NET MVC є відкритим кодом, мені цікаво, як швидко він закриє розрив функцій з RoR. Я закладаю свої гроші на MVC3 зараз, коли спільнота розробників матиме змогу внести свій внесок у продукт, який все ще повністю підтримується інженерними командами MS.
Скотт

1
Не впевнений у RoR. Якщо ви хлопець .NET з C # MVC та Razor, але MS MVC, WebAPI, WCF, EF трохи громіздкий і хочете більш жорсткого рішення ... ви можете спробувати SS servicestack.net ... Це безкоштовно , з відкритим кодом, дуже активна підтримка спільноти .net та mono, повна заміна вищезазначених важких фреймворків. Мені особисто це дуже приємно :)
Том

2
Версія Ruby проста та передбачувана, якщо ви використовуєте Bundler, як і належить.
Річка Ліліт

31

Я використовую і подобаюсь обидва, і проблема з таким питанням полягає в тому, що вони настільки різні, що ви могли весь день говорити про яблука проти апельсинів, але оскільки ваше запитання досить неспецифічне, я просто скажу:

Якщо ви вважаєте себе ".NET guy", то ви повинні вивчити мову, яка працює зовсім інакше, ніж C #, а динамічну мову, як Ruby, не погано починати. (Іншим варіантом буде функціональна мова на зразок Haskell, Scala тощо)

Ви станете кращим програмістом після того, як зробите це, і більше не доведеться називати себе ".NET guy"!


3
Я погоджуюся, але моя мета - створити справжній веб-сайт якомога швидше і розширити свій кругозір - не моя головна мета зараз. Я впевнений, що цінуюся вивчення нових чудових речей, таких як Рубі, але зараз я зосереджений на тому, щоб вибрати правильний варіант за обмежений час, який у мене є. І чому саме яблука та апельсини мають їхню мету створити структуру веб-розробки?
iCode

3
Швидкий запуск справжнього сайту не складе проблем із Rails. Зробіть собі послугу: Проведіть тиждень, працюючи в цьому підручнику, перш ніж ви вирішите, що це зашкодить вашому часу на ринок. Лише ризик полягає в тому, що ти щось навчишся! Причина, що вони "яблука та апельсини", полягає в тому, що вони працюють по-різному, працюють на різних платформах і т. Д. Вони мають спільну архітектуру MVC, і там явно великий вплив - переважно в одному напрямку - але вони дуже різні світи. Це може бути різниця, що розширює розум.
Craig Stuntz

Чудово, дякую. Я зроблю так. Чи можете ви все-таки прокоментувати, що можна отримати з Rails, який доступний у .MVC з практичної точки зору, враховуючи, що ви використовували обидва?
iCode

6

Тут не розробник RR, але я знаходжусь у Django, і я думаю, те саме питання можна було б задати і Django. Річ №1, яка мені подобається Django через ASP.NET MVC, це те, що Django вже поставляється з ORM. Це означає, що більшість будь-яких прикладів коду, які ви знайдете в Інтернеті, будуть начебто слідувати подібній схемі. З ASP.NET MVC ви можете обрати з безлічі різних ORM, що може бути хорошою справою, але також може викликати плутанину.

Так само, як сказав @Craig, це справді яблука проти апельсинів. Я вибрав би ASP.NET MVC, якщо мені потрібно було розгорнути його на стеку MS, і використовувати Django для "особистих" проектів або проектів, які вимагали його розгортання в Linux.


3
Ніколи раніше не використовував Джанго. Я хлопець з Rails та .NET MVC. Майже кожен підручник .NET MVC, який я бачив, передбачає, що ви використовуєте Entity Framework та документацію та навчальні посібники на сайті ASP.NET дуже хороші. Щоб включити EF в проект MVC, ви просто введіть команду в консоль менеджера пакунків NuGet - як і отримання дорогоцінного каміння з Rails, за винятком того, що ви отримуєте посилання на збірку .net IMHO .NET MVC з EF та кодом Спочатку разом із AppHarbor для розгортання - це найближче діло до середовища Rails.
PhillipKregg

6

У своїй відповіді Крейгу Штунцу ви згадуєте, що хочете "правильного варіанту протягом обмеженого часу"

Перейдіть з mvc3 і зосередьтеся на тому, щоб вивчити саме це, а не нову мову та рамки водночас. RoR - це чудово, але це нова мова, рамки та IDE - все відразу, і, швидше за все, ви не зможете встигнути правильно. Я не.

На веб-сайті asp.net є кілька дійсно хороших навчальних посібників, які допоможуть вам швидко працювати


2
Це теж було моїм роздумом, але я чую, як люди говорять про те, як легко робити речі в RoR навіть для новачків, але мені цікаво, чи це для веб-сайту привіт, привіт, або веб-сайт для реального виробництва. Я знаю, що моє питання хитромудрий, але щось підказує мені, що RoR - це нова мова, фреймворк та IDE - це все відразу, як ви згадали, і це не може бути настільки швидким, як робити виробничий продукт з .MVC, але я хотів знати, що таке .net досвід спільноти з цим? Я здебільшого хочу знати, крім веселощів, який сенс вибирати RoR над .MVC3? Спасибі
iCode
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.