F
Frank Rizzo
Not to start a flame war, but…
I’ve been programming mostly in C# for the last couple of months, but I
am quickly becoming more and more aggravated with it. My reasons are
below, but I was wondering what other people’s experiences are. I am
thinking that I’ll probably switch to vb.net in the whidbey time frame,
if things don’t change.
Reasons:
1. Why is there no intellisense after I type an enum data type followed
by the = sign? Why do I have to type the type of the enum + “.” to get
the intellisense. I had a habit of giving enums verbose names (to make
the code self-documenting) and this habit is causing me to type one hell
of a lot more than I want to. Example:
this.WindowState = … where in the world is the intellisense. I have to
type the following to get it:
this.WindowState = FormWindowState.
This is ridiculous.
2. Insane amount of silly conversions and casts.
int x;
x = FormWindowState.Normal; //this will not compile
x = (int) FormWindowState.Normal; //this compiles
Why in the world do I need to cast FormWindowState.Normal to an int, if
it is already an integer anyway? Shouldn’t this be resolved at the
compile time? I understand that someone @MS went and won the language
features jihad, but this just translates into lost productivity. VB
(-option strict) resolves this very nicely, I’ve never had a problem.
3. For WinForm apps, in the Code View for the form, it is impossible to
quickly find out which events are available for an object (like a button
or checkbox or whatever). You have to switch to Form View, go to
properties, switch to Events and then you’ll see it. Why such insanity?
Why not just copy the vb.net approach. The vb.net team is only one
floor away, just go and ask them for it.
There are other gripes, but I am just too tired.
I’ve been programming mostly in C# for the last couple of months, but I
am quickly becoming more and more aggravated with it. My reasons are
below, but I was wondering what other people’s experiences are. I am
thinking that I’ll probably switch to vb.net in the whidbey time frame,
if things don’t change.
Reasons:
1. Why is there no intellisense after I type an enum data type followed
by the = sign? Why do I have to type the type of the enum + “.” to get
the intellisense. I had a habit of giving enums verbose names (to make
the code self-documenting) and this habit is causing me to type one hell
of a lot more than I want to. Example:
this.WindowState = … where in the world is the intellisense. I have to
type the following to get it:
this.WindowState = FormWindowState.
This is ridiculous.
2. Insane amount of silly conversions and casts.
int x;
x = FormWindowState.Normal; //this will not compile
x = (int) FormWindowState.Normal; //this compiles
Why in the world do I need to cast FormWindowState.Normal to an int, if
it is already an integer anyway? Shouldn’t this be resolved at the
compile time? I understand that someone @MS went and won the language
features jihad, but this just translates into lost productivity. VB
(-option strict) resolves this very nicely, I’ve never had a problem.
3. For WinForm apps, in the Code View for the form, it is impossible to
quickly find out which events are available for an object (like a button
or checkbox or whatever). You have to switch to Form View, go to
properties, switch to Events and then you’ll see it. Why such insanity?
Why not just copy the vb.net approach. The vb.net team is only one
floor away, just go and ask them for it.
There are other gripes, but I am just too tired.