Ruby on Rails vs ASP.NET MVC 3 untuk Pria .NET? [Tutup]

98

Saya sangat baru mengenal RoR dan saya ingin memilih antara APS.NET MVC3 dan RoR. C # pasti lebih mudah bagi saya karena saya telah melakukannya begitu lama tetapi saya bertanya-tanya apakah ada gunanya mempertimbangkan menggunakan RoR daripada .MVC untuk mengembangkan situs web dunia nyata?

Apa lagi yang saya dapatkan dengan RoR yang tidak bisa saya dapatkan dengan ASP.NET MVC 3 yang layak menghabiskan waktu untuk menguasai RoR? Saya pikir plugin RoR komunitas yang tersedia akan menjadi salah satu alasan tetapi tampaknya tidak terorganisir dan sepertinya kurva pembelajaran untuk melakukan hal yang benar akan menjadi sangat besar sehingga praktis tidak akan menghemat banyak waktu untuk pemula! Saya bisa saja salah di sini dan saya sangat menghargai komentar kehidupan nyata Anda tentang ini? Ingatlah bahwa saya masih harus belajar ASP.NET MVC tapi kedengarannya cepat untuk Guy .NET!

Apa yang bisa ditawarkan RoR kepada orang NET yang LAYAK memilih RoR daripada ASP.NET MVC 3? dan mohon saran praktisnya! :)

iCode
sumber
11
Bagaimana pertanyaan ini keluar dari topik atau bukan pertanyaan nyata? Bagaimanapun, saya telah menambahkan advicetag pada pertanyaan.
Zabba
1
@zabba, kenapa? Sepertinya bukan tag bagi saya.
bzlm
1
@bzlm, apa itu non-tag?
Zabba
2
@zabba hanya 95 pertanyaan, tidak ada ringkasan wiki, tujuan tidak jelas (pertanyaan yang membutuhkan "nasihat" biasanya tidak dapat dijawab, dan karenanya tidak diterima sesuai dengan piagam situs), dll. :)
bzlm
3
Dinginkan guys! Bagaimana "apa nilai RoR di atas .NET MVC untuk pengembang NET?" bukan pertanyaan? !!! Tidak terkunci sama sekali di MVC dan hanya bertanya-tanya jawabannya !!
iCode

Jawaban:

71

Keduanya luar biasa, dan dapat mencapai tujuan yang sama dengan sangat cepat. Saya menggunakan buku yang bagus untuk dipelajari beberapa waktu lalu, dan itu akan sesuai dengan keinginan Anda: Rails for .Net Developers

Juga, saya menulis posting tentang pergi dari MVC ke RoR beberapa waktu yang lalu juga.

Sedangkan untuk perbandingan, keduanya memiliki kekuatan seperti yang telah dibahas, tetapi berikut adalah beberapa yang menarik bagi saya:

  • Saya sangat menyukai penerapan RoR dan cara sederhana untuk mendorong ke situs langsung - tidak ada skrip untuk dijalankan sama sekali, hanya sedikit baris perintah yang akan membuat Anda aktif dan berjalan setelah kode benar-benar ditulis. Jika Anda memilih RoR, PAHAMI PERINTAH BARIS PERINTAH - ini akan membuat hidup Anda jauh lebih mudah!

  • Seperti yang Anda sebutkan, pluginnya bagus, dan benar-benar dapat digunakan untuk mempercepat.

  • Sebagai pengembang .Net, MVC akan sangat mudah, saya akan merekomendasikan menggunakan Razor, karena sangat sederhana dan tidak terlalu berantakan dibandingkan rendering non-pisau cukur 2.0 yang lama.

  • EF4 .Net dapat dibandingkan secara langsung dengan ActiveRecord RoR, sistem ORM yang hebat untuk menangani data.

  • Saya telah menemukan bahwa dokumentasi .Net sedikit lebih konsisten dan menyeluruh.

  • Satu masalah yang saya hadapi dengan RoR adalah perubahan yang cepat dan drastis; belum lama ini, mereka meningkatkan versi ke 3.0 pada host saya, dan saya tidak mengunci versi saya - segala macam hal rusak sampai saya menemukan hal baru (saya seharusnya membekukan versi saya).

Ini bukan pilihan potongan bersih - keduanya bagus. Karena Anda sudah menjadi pengembang .Net, saya kira MVC3 akan menjadi cara yang tepat, tetapi keduanya mudah dipelajari.

naspinski
sumber
4
Sekarang ASP.NET MVC adalah open source, saya bertanya-tanya seberapa cepat itu akan menutup celah fitur dengan RoR. Saya menaruh uang saya pada MVC3 sekarang karena komunitas pengembang akan memiliki kemampuan untuk berkontribusi pada produk yang masih didukung penuh oleh tim teknik MS.
Scott
1
Tidak yakin tentang RoR. Jika Anda seorang pria NET dengan C # MVC dan Razor, tetapi Anda menemukan MS MVC, WebAPI, WCF, EF agak rumit, dan menginginkan solusi yang lebih ketat ... Anda dapat mencoba SS servicestack.net ... Gratis , open source, komunitas yang sangat aktif mendukung .net dan mono, penggantian penuh dari kerangka kerja berat di atas. Saya pribadi sangat menyukainya :)
Tom
2
Pembuatan versi Ruby sederhana dan dapat diprediksi jika Anda menggunakan Bundler, sebagaimana mestinya.
Lilith River
31

Saya menggunakan dan menyukai keduanya, dan masalah dengan pertanyaan seperti ini adalah bahwa keduanya sangat berbeda sehingga Anda dapat melanjutkan sepanjang hari tentang apel vs. jeruk, tetapi karena pertanyaan Anda tidak terlalu spesifik, saya hanya akan mengatakan:

Jika Anda menganggap diri Anda "seorang .NET guy," maka Anda harus mempelajari bahasa yang bekerja sangat berbeda dari C #, dan bahasa dinamis seperti Ruby bukanlah tempat yang buruk untuk memulai. (Pilihan lain adalah bahasa fungsional seperti Haskell, Scala, dll.)

Anda akan menjadi programmer yang lebih baik setelah Anda melakukannya, dan Anda tidak perlu menyebut diri Anda "seorang .NET guy" lagi!

Craig Stuntz
sumber
3
Saya setuju tapi tujuan saya untuk memiliki situs web yang nyata dan berjalan secepat mungkin dan memperluas wawasan saya bukanlah tujuan utama saya saat ini. Saya yakin sangat menghargai mempelajari hal-hal hebat baru seperti Ruby tetapi fokus saya saat ini adalah memilih opsi yang tepat untuk waktu terbatas yang saya miliki. Dan mengapa apel dan jeruk memiliki tujuan untuk menjadi kerangka pengembangan web?
iCode
3
Menjalankan situs nyata dengan cepat tidak akan menjadi masalah dengan Rails. Bantulah diri Anda sendiri: Luangkan seminggu untuk mengerjakan tutorial ini sebelum Anda memutuskan itu akan mengganggu waktu Anda untuk memasarkan. Satu-satunya risiko adalah Anda akan mempelajari sesuatu! Alasan mengapa mereka "apel dan jeruk" adalah karena mereka bekerja secara berbeda, berjalan pada platform yang berbeda, dll. Mereka memiliki arsitektur MVC yang sama, dan jelas ada banyak pengaruh - kebanyakan dalam satu arah - tetapi mereka sangat dunia yang berbeda. Ini bisa menjadi perbedaan yang memperluas pikiran.
Craig Stuntz
Terima kasih banyak. Saya akan melakukannya. Bisakah Anda tetap berkomentar tentang apa yang bisa didapatkan dengan Rails yang tersedia di .MVC dari perspektif praktis mengingat Anda telah menggunakan keduanya?
iCode
6

Bukan pengembang RoR di sini, tetapi saya mengerjakan Django dan saya pikir pertanyaan yang sama dapat ditanyakan untuk Django juga. Hal # 1 yang saya suka Django melalui ASP.NET MVC adalah Django sudah datang dengan ORM. Artinya, hampir semua contoh kode yang Anda temukan di web akan mengikuti pola yang serupa. Dengan ASP.NET MVC Anda dapat memilih dari banyak ORM berbeda yang bisa menjadi hal yang baik, tetapi juga dapat menyebabkan kebingungan.

Seperti yang dikatakan @Craig, ini benar-benar apel vs jeruk. Saya akan memilih ASP.NET MVC jika saya diminta untuk menyebarkannya pada tumpukan MS, dan menggunakan Django untuk proyek "pribadi" atau proyek yang memerlukannya untuk disebarkan di linux.

Al W
sumber
3
Belum pernah menggunakan Django sebelumnya. Saya seorang Rails dan .NET MVC. Hampir setiap tutorial .NET MVC yang saya lihat mengasumsikan bahwa Anda menggunakan Entity Framework dan dokumentasi serta tutorial di situs ASP.NET sangat bagus. Untuk memasukkan EF dalam proyek MVC Anda cukup mengetikkan perintah ke dalam konsol manajer paket NuGet - seperti mendapatkan permata dengan Rails kecuali Anda mendapatkan referensi perakitan .net. IMHO .NET MVC dengan EF dan Code First bersama dengan AppHarbor untuk penerapan adalah yang terdekat dengan lingkungan Rails.
PhillipKregg
6

Anda menyebutkan dalam tanggapan Anda terhadap craig Stuntz bahwa Anda menginginkan 'opsi yang tepat untuk waktu terbatas yang Anda miliki'

Gunakan mvc3 dan fokus pada pembelajaran itu saja, alih-alih bahasa dan kerangka kerja baru pada saat yang bersamaan. RoR memang bagus, tetapi ini adalah bahasa, kerangka kerja, dan IDE baru sekaligus dan kemungkinan Anda tidak akan melakukannya dengan benar untuk pertama kali. Aku tidak.

Ada beberapa tutorial yang sangat bagus di situs asp.net yang akan membuat Anda siap dan berjalan dengan sangat cepat

Baldy
sumber
2
Itu telah menjadi pemikiran saya juga dan tetapi saya mendengar orang-orang berbicara tentang betapa mudahnya melakukan sesuatu di RoR bahkan untuk pemula, tetapi saya bertanya-tanya apakah itu untuk situs web hello world atau situs web produksi dunia nyata. Saya tahu pertanyaan saya rumit tetapi ada yang memberi tahu saya bahwa RoR adalah bahasa baru, kerangka kerja, dan IDE sekaligus seperti yang Anda sebutkan dan tidak bisa secepat melakukan produk produksi dengan .MVC tetapi saya ingin tahu apa itu .net pengalaman komunitas dengan ini? Saya paling ingin tahu, selain kesenangan, apa gunanya memilih RoR daripada .MVC3? Terima kasih
iCode