Of course now with the CLR there doesn't seem to be any performance benefit
to using C# over VB, and VB I think is an "easier" language to pick up. I
actually wonder if the salaries between vb.net and c# will balance out a
little now since the language doesn't mean as much anymore.
I personally am a VB developer moved into asp .net / vb .net. I've been
considering going ahead and learning C# as well. I have only academic
experience with C++, but it is enough that I can read c# examples and
convert them to vb so I don't think this is a big deal for me to pick up the
new language. Just more wondering if I should even bother.
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Eric Wise" <NOe...@pica.army.milSPAM> wrote in message
news:exwW275V...@TK2MSFTNGP10.phx.gbl...
There's a new roadmap available:
http://msdn.microsoft.com/vstudio/productinfo/roadmap.aspx
It seems like C# is becoming a more "Advanced" language, while vb.net is
being targetted towards non-coders. True, the capabilities of both
languages are very similar, but I would recommend making the switch if it is
at all possible.
-Mark
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message
news:ubHYuC6V...@TK2MSFTNGP10.phx.gbl...
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Mark Heimonen" <ma...@adiaim.com> wrote in message
news:eDcS7K6V...@TK2MSFTNGP09.phx.gbl...
Just in general, I have found that C# is easier to follow and much more
logical and concise than VB is. Not to mention... XML Documnetation...
Plus, as many of us know... never rely on MSFT to actually stick to a
roadmap for anything. Just because one document says that this *feature*
will be in the next version, don't think that there won't be another one
that denies it. ;)
(Just think back to the release of WinME, you know, the revolutionary OS
that was supposed to be entirely 32-bit based and stable? ;) )
Bill P.
On Thu, 31 Jul 2003 16:05:24 -0400, Eric Wise <NOe...@pica.army.milSPAM>
wrote:
--
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
--
HTH,
Kevin Spencer
Microsoft MVP
.Net Developer
http://www.takempis.com
Complex things are made up of
lots of simple things.
"Eric Wise" <NOe...@pica.army.milSPAM> wrote in message
news:exwW275V...@TK2MSFTNGP10.phx.gbl...
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Bill Priess" <no....@nospam.com> wrote in message
news:oprs60xlkfcimqky@localhost...
And in the end... that is what is important. :)
Efficiency and quality.
C# or VB.NET... I choose vb.net. Coding less and do the same thing? Why not?
:)
I'll have less OverTime on the end of the month :)
Joao Cardoso (MVP dotNET)
=======================================================
[LusoCoders]- http://groups.yahoo.com/group/lusocoders/
[PontoNetPT]- http://www.programando.net/regras.aspx
jj...@acinet.pt.nospam - www.acinet.pt
=======================================================
I'd be genuinely interested to see some examples of tasks that can be
performed more quickly in VB.
Thanks,
John
PS. Although, of course, it does save you all that time declaring your
variables.... (wry grin)
--
HTH,
Kevin Spencer
Microsoft MVP
.Net Developer
http://www.takempis.com
Complex things are made up of
lots of simple things.
"John Sparrow" <jspa...@ecclescollege.ac.uk> wrote in message
news:1357b958.03080...@posting.google.com...
Here's one: Debugging.
The VS.NET designer catches most VB.NET syntax errors as I'm typing them,
where as you have to wait until compile time and then get them all thrown at
you at once. Then you have to retrace your steps and go back to fix them
all, which could have a domino effect and require you to go back and change
other related things too. What a waste of time!
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"John Sparrow" <jspa...@ecclescollege.ac.uk> wrote in message
news:1357b958.03080...@posting.google.com...
Yes, C# is case sensitive, but again that is all sorted by
intellisence. When you need to type
"LoadPageStateFromPersistenceMedium" just type "lo" (lower case) and
pick it from the list. Sorted.
I even opened up a VB project to see if there was something amazing I
was missing out on. The behaviour is identical!!
John
"Kevin Spencer" <ke...@takempis.com> wrote in message news:<uRsC1BHW...@TK2MSFTNGP12.phx.gbl>...
Button1.Text = "90" / "John"
It accepted it as I typed. It let me 'compile' it. When I ran the
code, it threw an exception when I pressed the button. A run-time
error.
The same in C# will not compile. "Operator '/' cannot be applied to
types string and string" is the message.
VB's obviously showing its heritage as an interpreted language;
there's "as you type" and "runtime". not much inbetween! I guess it's
treating all literal values as dreaded Variants - and so delegating
any type checking decisions until runtime.
Does this improve productivity?? hmmmmm....
John
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message news:<OuSGMYHW...@TK2MSFTNGP10.phx.gbl>...
1) In VB, if I define a boolean variable and later in the prcoedure go to
assign a value to it, VB gives me a list of True or False after I type the
assignment operator - C# doesn't do this.
2) If I define an Enum type and declare a variable of that type, when I go
to assign a value to that variable in VB, I get a dropdown list of valid
values for that type. I don't get this in C#.
3) And then there's the case-seinsitivity thing. In VB, I can declare a
variable, say _someVariable, and later on I can just type the whole thing in
lower case and VB knows what variable I mean and it will automatically
correct the case to match the way I declared it and provide any applicable
intellisense. In C#, if I don't type it the same way it was declared, I
don't get any intellisense dropdown because C# considers it a different
variable.
Chris G.
As for VB/Boolean/Intellisense... C'mon.. have we gotten so bad that we can
not type 4 or 5 characters? ;) (had to lighten this up...)
Bill P.
--
The VB/Boolean/Intellisense thing he mentioned is just one of many such
examples. Multiply that by the number of times you'll run across stuff like
this during the development of a large, complex app and it turns into
something quite significant.
Perhaps your employer has so much money to spare that they don't mind paying
you to chase down issues like these all day long.
;)
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Bill Priess" <no....@nospam.com> wrote in message
news:oprteja1ujcimqky@localhost...
Jerry
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message
news:eUsCWxt...@TK2MSFTNGP12.phx.gbl...
It's common practice in some environments to use all-lower-case for
fields, and capitalisation for Properties. A clear distinction I've
never had any problems with (ie 'color' is the field and 'Color' is
the property).
And all sorted by intellisense too.
> The VB/Boolean/Intellisense thing he mentioned is just one of many such
> examples. Multiply that by the number of times you'll run across stuff like
> this during the development of a large, complex app and it turns into
> something quite significant.
And the many other examples? like the debugging example - where VB
proved less effective at detecting type incompatibility? (see my
previous post)
I want to stress here once again that I'm not rubbishing VB - rather I
am defending C# against ill informed critisism - specifically of
offering lower productivity.
It can't be sunstantiated - and if necessary I'll do a keystroke
analysis of two identically functioning programs (VB v C#) to prove
it!
I'd be prepared to bet the C# version involved less typing, as well
(of course)as offering improved compile time type checking.
John
> Actually allowing the programmer to use different casing for the same
> variable intriduces bugs. If you mistype your variables in C# (or C/C++ for
> that matter) your code will not compile. You have to use exactly the same
> name all over your code, not like in VB where you can have four different
> casings pointing to the same variable. C just requires more discipline.
Perfect example of what's wrong with the world today. Let's not have
the discipline to do things correctly... lets just do whatever we feel
like and expect someone else will come along and clean it up for us.
John
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"John Kraft" <jhk...@ilstu.edu> wrote in message
news:bgrlo2$c7r$1...@malachite.ilstu.edu...
Jerry
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message
news:OtK7FFG...@TK2MSFTNGP09.phx.gbl...
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Jerry III" <jerr...@hotmail.com> wrote in message
news:ucFiXaK...@TK2MSFTNGP10.phx.gbl...
In the same way, I find reading VB similar to wading through treacle.
But I'm sure it makes perfect sense to you.
The agument that "I can't read C#, therefore C# is difficult to read."
is like saying "I can't speak French, therefore French is difficult to
speak."
Subjectively true, objectively facile.
Still waiting to here about the productivity comparison. Should I do
the keystroke analysis??? grin.
John
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message news:<uZlO2vKX...@TK2MSFTNGP10.phx.gbl>...
Actually you are. You are expecting the environment to clean up after
you.
I don't think that having the environment do things for you is a bad
thing. If it helps you to write code more quickly, I think that is a
good thing.
Complaining that C derived languages are bad, or worse than VB, because
the environment will not do things for you is simply laziness. Those
people using the excuse that the environment won't do things for them as
an excuse to criticize the language are only lying to themselves.
> We're expecting the computer (VS.NET specifically) to assist us with minor
> details that are unimportant to the logic of the program. Computers exist
> to do things for us. If you don't like that then I don't see why you use
> computers at all. All day long I write programs that do things for other
> people. Microsoft programmers put a lot of effort into creating VS.NET so
> it would do things like this for us and make our jobs easier. Are you
> suggesting we throw away their efforts and do things manually? That seems
> like a waste of time and money.
>
Definately not. I happen to love VS... for the most part. But writing
code in VB.NET has definately made me become a lazier programmer.
I think if you want to compare languages, you shoud compare them on the
languages themselves... not the environment.
John
> As discussed already, VS.NET automatically adjusts the case of your VB.NET
> variables so that they all match. Therefore your point is again moot.
> Also, because VB.NET uses real words it is far more readable than C#. Even
> many C# programmers would likely agree with that. C#'s syntax strength is
> it's brevity, not readability.
>
That's like saying that Spanish is more readable than Japanese. To
whom? I think a Japanese/Chinese person would disagree with you. That
is all a matter of perspective.
My first language I ever learned was C. Therefore, to me, C derived
languages are much easier to read. VB is easier to read for people who
are not programmers or who have only programmed in VB like languages.
Once again, we should base our comparison of the languages on the
languages themselves. After all, a language is nothing more than a
collection of symbol and a syntax to put those symbols together to
communicate something.
Additionally, "better" is a suggestive term. Maybe the discussion
should focus on which is "more powerful", "easier to learn", etc. I
personally tend to judge a language mostly on what a language can do,
with only a little bit given to ease of use. This is why I think C++ is
the best language ever made. But, that's a personal preference.
I personally prefer the c# language because I am more familier with the
syntax and there are, according to books I've read, some things you can
do in c# that cannot be done in VB. I am however forced to use VB in my
occupational position and have learned the syntax well enough that I am
mostly comfortable with it, even if I don't like it.
John
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"John Sparrow" <jspa...@ecclescollege.ac.uk> wrote in message
news:1357b958.03080...@posting.google.com...
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"John Kraft" <jhk...@ilstu.edu> wrote in message
news:bgu3fb$je3$1...@malachite.ilstu.edu...
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"John Kraft" <jhk...@ilstu.edu> wrote in message
news:bgu479$ju1$1...@malachite.ilstu.edu...
The C# keyword list (half as long, remember) shows about 85% English
words. The most esoteric are things like 'uint' and, yes you've
guessed it, 'enum'.
I showed some VB source code to my non-programmer collegues. They can
read the English language proficiently, but couldn't understand the
code (not suprisingly). That's because, to understand VB, you need to
know over 150 keywords, the Framework, and principles of technologies
like OO, Event driven programming and structured exception handling.
Just like for C#.
Both languages have a deterministic structure - a particular piece of
code means something concrete. It is unambiguous.
If you're trained to read VB, it makes perfect sense and is clear.
If you're trained to read C#, that also makes perfect sense. The only
difference is, 50% less keywords to learn.
John
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message news:<OI0EnyS...@TK2MSFTNGP10.phx.gbl>...
> No, I'm saying that I can read the english language, therefore VB.NET is
> easy to read.
> VB.NET uses real words, that makes it READABLE.
> Of course anyone can read C# with enough training, but it takes a good deal
> more training because it has much less in common with the english language
> which most of us already know to begin with.
>
--
HTH,
Kevin Spencer
Microsoft MVP
.Net Developer
http://www.takempis.com
Complex things are made up of
lots of simple things.
"John Sparrow" <jspa...@ecclescollege.ac.uk> wrote in message
James W. Hall Sr.
jh...@alpha-transportation.com
*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
However, since I am not a real programmer, I tend to attempt to force
myself to write code as best I can with as little help from the editor
as possible. I do, however, rely on context sensitive coloring because
I am slightly dislexic and tend to mistype words.
John
"John Kraft" <jhk...@ilstu.edu> wrote in message
news:bh0s5g$37l$1...@malachite.ilstu.edu...
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Seaside" <s...@hotmail.com> wrote in message
news:ee%23comeX...@TK2MSFTNGP12.phx.gbl...
And, just for the record, I am not a REAL programmer. I'm a programming
student, specificly a senior in Computer Science, at Illinois State
University, so no offense was taken on my part.
John
> There's no reason to be intimidated by all the keywords in VB.NET.
> Many of them are leftovers from VB6 and before. They still exist for
> backward compatibility & such.
> Many of them are now somewhat redundant and unnecessary - but it's nice to
> have options.
> You can learn those extra keywords if you want, but you don't need to know
> most of them to be a good VB programmer.
> You're right that C# has less keywords - but many more symbols that you must
> memorize, and they can mean different things in different contexts.
Can you give some examples? I think VB is worse at this than C#. One
of the biggest problems I have in VB is determining whether a line of
code is assigning a value or doing a comparison... or more specifically,
how the compiler will treat such code.
I saw a line of code once that said something like:
var1 = (var2 = var3 + var4)
and I was confused for quite some time as to what would happen with the
code.
In C#, the = and == are quite different and a line of code like above
would be far more clear.
John
you mean dribble don't you? a forum for pompous a$$es to tell everyone why
they think their way is the only way....what a bunch of pious holier than
though crap.
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message
news:%23TTkyLf...@TK2MSFTNGP10.phx.gbl...
> Lighten up! There's nothing wrong with a healthy debate. Nobody is
forcing
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Seaside" <s...@hotmail.com> wrote in message
news:%232Wykff...@TK2MSFTNGP09.phx.gbl...
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message
news:%23gZYyCg...@TK2MSFTNGP10.phx.gbl...
There is plenty of confusing syntax in C#. For instance those darn curly
braces. They are everywhere! The only thing they ever have in common is
opening and closing some kind of block of code. But which kind? If you see
a closing curly brace you've got to scroll back up to where the block
started to find out, which may or may not be easy depending on how long the
block is and how the programmer formatted the text. The only consistently
easy way is if you put a comment after the curly brace that specifies which
block of code is being closed. I see this frequently in C#.
VB is more self documenting. You know what block is closing because it
explicitly says END IF, or NEXT, or LOOP. No comment necessary, and VS.NET
formats it all very nicely and consistently for you in case you do want to
see the beginning of the code block.
And those darn semicolons! What's the point? There's a reason it's named
the "Enter" key!
Of course we're nitpicking now. I'm sure we could go back and forth about
such minor annoyances.
My main point is that you shouldn't have to learn to think like a computer
in order to get them to do useful things for you. One day we won't have to.
You'll simply tell your computer what you want it to do and it will do it.
Computers are getting more and more user friendly and "intelligent" all the
time. Even C# is an example of this trend. VB.NET is simply a better
example of it.
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"John Kraft" <jhk...@ilstu.edu> wrote in message
news:bh15ph$811$1...@malachite.ilstu.edu...
How's that for debate ORR you pompous A$$
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message
news:eNu9cVg...@TK2MSFTNGP12.phx.gbl...
Every newsgroup is for discussion/debate! That's why they exist!
There is almost always more than one way to solve a programming problem and
I enjoy reading different people's opinions about which techniques are
superior in different situations. If you don't enjoy that then I don't know
what you're doing in here.
I happen to feel VB.NET is superior for ASP.NET development. That's why I'm
here stating my case in this newsgroup. I'll admit that C# is somewhat
superior for some other kinds of programming, but that's a bit off topic.
I don't read every message in every thread. I tend to read the ones I find
interesting and ignore the ones that I find to be boring or annoying. I
suggest you do the same.
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Seaside" <s...@hotmail.com> wrote in message
news:OUvQYFgX...@TK2MSFTNGP12.phx.gbl...
They are for discussion and help. Not the rants of a self professed "EXPERT"
who doesn't know his A$$ from a whole in the ground! Yes YOU.
"Steve C. Orr, MCSD" <St...@Orr.net> wrote in message
news:eZnPKegX...@TK2MSFTNGP10.phx.gbl...
I don't see any address listed for your web site. Is there a reason for
that? Do you even know how to make web sites? Or perhaps you're just too
ashamed to show us. I suppose its much easier to criticize others so I
guess you're just sticking to what you're good at. I can't blame you.
--
Steve C. Orr, MCSD
http://Steve.Orr.net
"Seaside" <s...@hotmail.com> wrote in message
news:%23wgnlZg...@TK2MSFTNGP09.phx.gbl...
I don't believe I ever proclaimed myself to be an expert on anything,
although clearly I've demonstrated more programming knowlege than you in
this thread. Of course if it were a discussion about who is better at
cussing and insulting strangers then certainly you are more of an expert
than I.
But this is getting quite off topic so I see no reason to continue any
discussion with you. I'm sure you'll make another post though just so you
can get in the last word. And I'm sure it will contain lots of swear words
and other such unintelligible speak because that seems to be your style.
Have at it!
--
I hope this helps,
Steve C. Orr, MCSD
http://Steve.Orr.net
"Seaside" <s...@hotmail.com> wrote in message
news:%23$xC8ggXD...@TK2MSFTNGP09.phx.gbl...
Productivity
============
- C# is as equally suited to application program development as VB.NET
- Productivity between the two languages is comparable
- Execution speed of programs written in both languages is comparable
- VB offers improved as-you-type checking, but inferior compile-time
checking (relying on runtime checks instead)
- Both languages have advanced Intellisense features (resolving case
issues in C#) with the VB Intellisense being slightly more advanced
for Booleans and Enums
- Comparable statements can be up to 266% shorter in C# - with or
without Intellisense
Ease of use
===========
- C# has half the number of reserved words to learn
- Both languages have identical class, method, and function names (the
Framework)
- To be used properly, both languages require knowledge of object
orientation, event driven programming, and exception handling
- Both languages are not immediately accessible to non-programmers
Technology
==========
- C# is fully object orientated, ie 訴nt.Parse(x)' whereas VB uses
some legacy non-OO function calls
- VB supports as-you-run modifications
- C# supports XML commenting
- C# is supported by other platforms (Borland C#Builder, and 閃ono' on
Linux http://www.go-mono.com)
Knowledge-reuse
===============
- Knowledge of VB is useful for programming Office and VBScript
- Knowledge of C# is useful for programming Javascript, Jscript, PHP,
Perl, Java, C and C++ (currently the dominant language for native-code
development on both Windows and non-windows platforms)
I agree totally that that VB is easier to read from an English point of
view, but I don't believe in "intuitive" type of coding. I like to make
everything explicit.
As for writing self documenting code, I find it quite easy to write self
documenting code in C languages. It just requires you to create
variables with more meaningful names.
As for Mr. Seaside... although I appreciate him attempting to come to my
aid, I tend to ignore people who cannot carry on a civilized
conversation and resort to profanity.
John
VB or C# - get over it.
Been there, done that!
John Kraft <jhk...@ilstu.edu> wrote in message news:<bh0s5g$37l$1...@malachite.ilstu.edu>...