C#/Monodevelop

So today I figured I’d try Mono and C#. I know it’s currently a patent trap but I’m sure we all have *that* friend, the one who constantly babbles about how great both of them are and how C# totally isn’t Java. So now I’m reviewing both C#, and the IDE made specifically for Mono, monodevelop. So I did a quick apt-get for everything and popped over to msdn(MicroSoft Developer Network, if I remember correctly.) and I have to admit, C# is totally and completely different from Java, I mean look at how completely opposite these hello world lines are:

C#:
System.Console.WriteLine(“Hello, World!”);

Java:
System.out.println(“Hello, World!”);

See? Nothing in common at all. but I’m going to stop with the sarcasm for a moment and actually get into monodevelop and actually using C#.
Monodevelop is kind of confusing at first, it really is overwhelming. You open up, nice pretty splash screen, then a good intro page…..then you click new and then you freak out. First you must choose what *kind* of new, file or solution. Since I have no idea what a solution IS I chose file. After that you have a dialog with more choices, you get to choose between:
C
C#
CPP
Deployment
Misc
VBNet(WHY VB WHEN YOU HAVE NO VISUAL PART, WHY NOT SAY MONOBASIC?!)
Web
XML

I have an idea of what each of these things are but then it gets better, let’s assume you click on C#. Then you have THESE choices:
ASP.NET
General
Gtk
Misc

Again, I know what these are, but still…..now it gets even more fun, let’s click Misc and guess what? More choices. Now I have to choose between:
Empty Class
Empty Enumeration
Empty Interface
Empty Struct
Empty File

Following Java conventions I would have wanted empty class, but remember our little friend up there? Mr “C# it totally not Java”? Well thanks to him I’m now totally clueless and have to pick empty file….all that to open an EMPTY FILE. Then I go and want to run my program after writing it. Okay, compile test…available, compile all…not available, debug…available, stop..not available, but where’s Run? Well it’s not in the compile options silly, you have to do Run/Run. Just what I’ve always wanted, to go through another menu. That’s pretty much my experience for Monodevelop.

Back to C#, I like that they have namespaces, if you put using System; at the beginning of the C# program you can get away with just Console.WriteLine(“foo”); There are other things but it seems to me that everything in C# you could do in Java. Even that Common Language Runtime/Common Language Interface they talk about? You know, multiple languages in one runtime? Yeah…you can do that in java too, without the patent mess.

Gedit 😉

EDIT: It’s System.out.println not system.out.println

Advertisements
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: