Page 1 of 2

C# Rocks!

Posted: Fri Apr 03, 2009 6:09 pm
by nekros
Despite my everlasting hatred for all things Microsoft, I find that I am absolutely loving C# (along with C# express). Never have I had so much joy doing Windows programming. I especially love that foreach and the string datatype.

Re: C# Rocks!

Posted: Fri Apr 03, 2009 8:45 pm
by steveklabnik
Real men, when their loved ones are held at gunpoint and are forced to code with Microsoft tools, respond with "F#" when asked to choose their poison.

Re: C# Rocks!

Posted: Sat Apr 04, 2009 12:09 am
by JackScott
I'm interested in getting into C# programming at some stage in the near future. Does anybody have any recommendations for tutorials (apart from those on MSDN, which I find completely incomprehensible)?

Re: C# Rocks!

Posted: Sat Apr 04, 2009 7:48 am
by DeletedAccount
Hi,
I never read any books on C# language actually :mrgreen: . I learned the syntax and started coding right away , it's very similar to java . But i would recommend you to read the book CLR via C# , which is a great book by the way . This is one books about C# which i found to be quite good .
http://vijaymukhi.com . The site book section contains a good number of books related to C# .
I shall try to find some more resources for you :) , but at a later post .

Regards
Shrek

Re: C# Rocks!

Posted: Sat Apr 04, 2009 9:38 am
by nekros
Despite it's complexity C# was actually very easy to learn.

Re: C# Rocks!

Posted: Mon Apr 06, 2009 6:07 am
by 01000101
I constantly preach about C#.NET (with the VS EE) in IRC. :D

It's extremely easy to pick up with a little bit of C-syntax-knowhow, and paired with VS C#.NET EE IDE is a great programming tool. I've made a few apps that would have taken me days to write in standard C/C++ (or even C# without the fancy IDE) in hours.

Re: C# Rocks!

Posted: Mon Apr 06, 2009 8:49 am
by nekros
01000101 wrote:I constantly preach about C#.NET (with the VS EE) in IRC. :D

It's extremely easy to pick up with a little bit of C-syntax-knowhow, and paired with VS C#.NET EE IDE is a great programming tool. I've made a few apps that would have taken me days to write in standard C/C++ (or even C# without the fancy IDE) in hours.
That's my favourite part.

Re: C# Rocks!

Posted: Mon Apr 06, 2009 9:31 pm
by Steve the Pirate
C# is quite a nice language, but I really don't like anything tied to .Net because not only is it very unportable (unless you want to ship a massive Mono runtime, and Windows Forms won't work anywhere near as well on other platforms), C# and Visual Studio encourage bad coding practice. This is because being able to just double click on a control and start writing its event handler makes it far to easy to just put all your view and controller code (if you're into MVC) mixed up into the same function. This (in my experience using C# quite a lot at work) leads to massive headaches when you want to make changes to the user interface... Cocoa and Objective C do a far better job at this, but since that too is quite unportable I prefer C++.

Re: C# Rocks!

Posted: Mon Apr 06, 2009 9:51 pm
by pcmattman
Hi,
C# is quite a nice language, but I really don't like anything tied to .Net because not only is it very unportable
I fail to understand why everything has to be portable, or else it's "evil".

I personally quite like C# when I do Windows development that requires a GUI.
This is because being able to just double click on a control and start writing its event handler makes it far to easy to just put all your view and controller code (if you're into MVC) mixed up into the same function.
As with any other language, proper design and planning helps keep the headaches away later on ;). That's possibly the worst part of Visual C# - it's so easy to skip straight to coding because it's so easy to develop the application on the fly rather than following a process.

Re: C# Rocks!

Posted: Mon Apr 06, 2009 10:13 pm
by skwee
I always was against high level languages like Java and C#, then I tried java and it was easy and fun (and annoying :x but lets leave for now) and also portable. Then I tried C# and it was pleasure (don't misunderstand me, I still prefer C and C++) but when you need to write something fast, and with gui, C# is the language.
About portability, porting c++ GUI application aint easy also, you anyway will have to install some libraries (wxwidgets, gtk) but: a. gtk looks ugly on windows, b. there is no normal GUI editor for wxwidgets/gtk, and this why writing gui in C/C++ becomes a nightmare. At the end I want to have GUI, not messing with layout options and trying to understand why my "OK" button is located 10px down from my "Cancel" button.

Re: C# Rocks!

Posted: Mon Apr 06, 2009 11:15 pm
by Colonel Kernel
I like C#, and in theory I'd be using it a lot at work, but most of the code in the product I'm working on is actually SQL stored procedures. :P I feel like I'm stuck in some kind of COBOL-esque time warp with lots of capital letters.

Re: C# Rocks!

Posted: Wed Apr 08, 2009 4:11 pm
by Owen
Interestingly, most of them comments apply for Qt on C++. (Yes, including the foreach loop!)

I took to learning it when Nokia LGPLed it... And, well, I find it to be one of the nicest environments I have ever worked with

Re: C# Rocks!

Posted: Wed Apr 08, 2009 5:40 pm
by NelsonC
Steve the Pirate wrote:C# is quite a nice language, but I really don't like anything tied to .Net because not only is it very unportable (unless you want to ship a massive Mono runtime, and Windows Forms won't work anywhere near as well on other platforms), C# and Visual Studio encourage bad coding practice. This is because being able to just double click on a control and start writing its event handler makes it far to easy to just put all your view and controller code (if you're into MVC) mixed up into the same function. This (in my experience using C# quite a lot at work) leads to massive headaches when you want to make changes to the user interface... Cocoa and Objective C do a far better job at this, but since that too is quite unportable I prefer C++.
Perhaps it's true for WinForms (Though most people who use Model-View-Controller or Model-View-Presenter have a decent time with it) but it's absolutely false for something more modern like WPF.

Most experienced WPF devs use Model - View - ViewModel which enforces a strict separation of concerns between the backend business objects, and the front end View, with the ViewModel being an adapter for the Model for the View.

Honestly, if followed strictly, the app should be able to run "headless" without WPF at all, and even with a WinForms UI thrown ontop of it (Granted you use INotifyPropertyChanged instead of DependencyObject in your ViewModel).

WinForms had the concept of DataBinding and INotifyPropertyChanged since .NET 1.0, and WPF takes it further with DependencyObjects, DependencyProperties and a more robust databinding architecture. It's really a joy to use.

I've found C# to be optimal for almost every aspect of my Windows programming, it can go neck and neck with C++ in many areas, if you know how to pump the performance out of the language/framework, and the pureness of the language is very attractive.

Re: C# Rocks!

Posted: Thu Apr 09, 2009 3:27 pm
by PHPnerd
C# is very often used for game development, right? when I see the word; C#, I think about .NET and Microsoft, directly.

I dont like .NET, I only use VC++.NET for making applications with some GUI.
MSDN sucks hard, its search function too. Thats why i prefer making GUI in VC++.NET than C++ with the windows.h

Java, slow to me, got to learn it for school (schools here in The Netherlands use it as primary language :( (Middle High School AND University)

I prefer C :)

// PHP

Re: C# Rocks!

Posted: Thu Apr 09, 2009 6:06 pm
by AndrewAPrice
PHPnerd wrote:C# is very often used for game development, right?
With XNA (basically DirectX .Net'erised with some Xbox specific features) you can write hobby games in C# for Windows and Xbox 360. C++ is still by FAR the most used language in professional game development.