Friday, June 09, 2006

C# and Java

I am currently in charge of a little project developped in C#. First all, I am not really fond of Microsoft products... But nevertheless, I accepted to try this language with an open mind.
First the transition from Eclipse to Visual Studio is rather painful. Eclipse enables many more actions (but perhaps I don't know enough of VS...).
Next, C# is exasperating by its way of redefining Java features and changing them just enough so you don't feel at home. This is true for the syntax and a bunch of little things.
And finally, what I hate most about C# is its lack of useful methods on datastructures. You really feel that the language is developped for stupid web development without any interesting algorithm. For example I can not extract a subdictionnary from a dictionary or even add a complete dictionary dictionary to an already existing one.
But, on the other hand you can use features such as properties, that, in my opinion, are superfluous and even dangerous as they hide the encapsulation principle, that from my experience is not always weel understood by developpers...

That was my contribution to the debate of Java versus C#.