views:

40

answers:

1

I'm a Ruby programmer and I've gotten pretty used to the "ruby" style of programming; such as duck typing. Are there any good resources for learning Visual C# 2008 coming from a Ruby background?

+1  A: 

C# 4.0 introduces a lot of dynamic language properties. Looking at articles such as this one "C# 4.0 goes dynamic" will shine a light on where C# came from, where it is, and how it compares with Ruby.

The real kicker isn't the language so much as the framework. Going from Rails to MVC is an obvious first choice, avoid the ASP.NET WebForms side initially as the culture shock of drag-n-drop controls with ViewStates and "a little magic" may be a bit much to start with.

And there are many articles showing C# programmers how to use Ruby and RoR because Rails is the hotness. You may want to read those as well because though you know Ruby/RoR already, many of these still compare similar language and framework features - such as comparing AR to LINQ.

databyte
I'm not much a a Rails guy, really. I like Ruby because if the extensibility of the language. And I'm used to the drag-n-drop controls because I started programming with visual basic 6 =p. But in C# I'm not sure where to (or even how to) declare class/instance variables or constants or anything.
c00lryguy
I dunno how much educational use a comparison of C# 'dynamic' is... as I see it dynamic is a niche tool used when you need multiple dispatch or interop with a dynamic system, not something that every C# method is going to default to using. It does offer a great way to use IronRuby though :)
Jimmy
Does IronRuby have a form builder for it? Just curious. Anyways, I'm pretty interested in C# in general, but I'm not used to how it works yet.
c00lryguy
Then I would suggest a good C# book - many are out there and work from little experience to lots. C# in a Nutshell is good.The similarities between your past languages and experience will simply help you draw lines between the dots that exist and draw news one where none existed.From a VB stand-point, you can fire up a "Form" (whether WebForm, WinForm, or WPF) and drag controls just like VB6 (I too built apps there as well - *shutter*). Depending on the project type, all your variables and constants will live in classes, forms, etc. Get a Design Pattern book as well! ;-)
databyte