ASP.Net MVC vs. Ruby on Rails [closed]
If you were starting a new web development project would you use ASP.Net MVC 2 or Ruby on Rails?
I have recently invested some time in to learning Ruby on Rails because I wanted to learn a solid web development framework. Then I took a new job where I will be using ASP.Net MVC 2.
I know this question is very subjective, but I am planning to write some websites on my own, outside of work, and I would like to get some opinions from others.
Professionally, I'd go with what my team knows best (in my case, MVC and the .Net stack). Since if you have a team with years of experience on a framework, a new app for a production system is not the place to learn new things.
Personally, I'd start by determining where I wanted to take my own learning plan next (I code in both Ruby and .Net, and have personal sites in MVC and Rails). For example, when I wanted to do some personal development in BDD, Jquery, etc. I decided to do my site in MVC since I didn't want to add another learning opportunity at the same time. Now, as I'm looking to build another learning site, I want to play with Cucumber, RSpec, and rails as a learning exercise (and build a nifty site to boot).
Lastly, if I was building a new site with the intent of selling a product or turning a profit, I would objectively figure out which I felt I could get out the door in a shippable state in the shortest time possible. Today, that would be an MVC site. Tomorrow, it might be Rails since I'm on a Ruby studying binge right now.
So to answer, I'd say it depends on your goals (business, learning, profit) and how this site fits either into your professional or entrepreneurial plans or your personal development plan.
The .NET skills you'll acquire working with ASP.NET are applicable across the entire development spectrum; not just web development. Want to write desktop apps? XBOX games? Parallel processing services? Linux or Android apps? You can do all of that with C#/.NET.
I've heard good things about Ruby. I use a variety of languages for different tasks -physicists seem to love SCHEME which has been causing my therapist nightmares as of late - but my web projects are exclusively in .NET.
The best way to become proficient with a new language is to immerse yourself in it, and write something FUN. If you want to get up to speed on the new job as quickly as possible, write something you're interested in using the tools they prefer. ASP.NET MVC is more complex than Ruby, but it's also incredibly powerful once you pass that "Ah ha!" bump in the learning curve.
don't take a poll on stack overflow, use whatever interests you. work is for paying the bills, your personal projects should be for expanding your mind (and having fun)
Since you'll be working with ASP.NET MVC, if I were you I would learn Ruby on Rails on your personal projects. Learning both will make you a stronger programmer because you can see the same solution from multiple perspectives.
精彩评论