|
Marc Clifton wrote: VB programmers were cheaper and more readily available
I have found there are more skilled resources in c#, and the fact that 80% of all articles and examples seem to be in c# was enough for me to take the team from vb to c#.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Marc Clifton wrote: VB programmers were cheaper and more readily available
And larger about the chestal region.
|
|
|
|
|
tmik wrote: Is there any one who can pin point the things VB can't do while other languages can do. It doesn't really work like that, you know? Here, let me show you.
Problem 1:
Am I wrong to declare MSIL is the best programing language ever.
Is there any one who can pin point the things MSIL can't do while other languages can do.
Ok, fine, there are a couple of things. But the problem with MSIL is not what it can't do, it's that it's MSIL. Obviously anything that can be done in VB.NET (or any .NET language) can be done in MSIL, because that's what it is compiled to. By the measure of "can do the most things", MSIL would be the best possible .NET language. So clearly that's a silly measure.
Problem 2:
Suppose language 1 can do A and B, and language 2 can do B and C. Which language is better?
|
|
|
|
|
harold aptroot wrote: Suppose language 1 can do A and B, and language 2 can do B and C. Which language is better?
The one with the bigger breasts.
---------------------------------
Obscurum per obscurius.
Ad astra per alas porci.
Quidquid latine dictum sit, altum videtur .
|
|
|
|
|
I think it comes down to personal preference I was a VB.NET developer now I move to C# and don't regret it.
But there has been mud sling about VB in general being a inferior language since it the early 90's that I know of. So I would put on your flame proof pants as you will more than likely get some stick.
previous versions of the language couldn't do half of the stuff that C# could do and vice versa for example
in Visual studio 2008
VB couldn't update values in a LinQ query
C# could do default values in method.
but since VS2010 they changed some of this and Microsoft decided to develop the languages at the same pace i.e. what went into VB also went into C# etc.
Every day, thousands of innocent plants are killed by vegetarians.
Help end the violence EAT BACON
|
|
|
|
|
tmik wrote: Am I wrong to declare VB .Net is the best programing language ever.
Undoubtedly.
Regards,
Rob Philpott.
|
|
|
|
|
My view is Horses for courses, I have to use C, Assembler for microcontrollers & C# for windows, I have used VB6 in the past (looking like I might have to do some debugging again in it!) but I would go so far to say that is ideal try writing drivers in it (you can, you don't want to), it sadly gives you the view that you can do everything from one language while you can have a stab at nearly everything (the code stands to be ugly/not very maintainable)...
|
|
|
|
|
tmik wrote: Am I wrong to declare VB .Net is the best programing language ever.
Yes.
It's a kludge on an bodge on a hack of a language first designed for non programmers - and it shows.
It allows stupidly weak typing, and any language which allows ON ERROR RESUME NEXT should be taken out and shot.
Having said that, if you use it properly it is a good, robust, modern language. The problem is that most of it's users are not good, robust, modern coders...and the teachers who educate them are even worse.
The only instant messaging I do involves my middle finger.
English doesn't borrow from other languages.
English follows other languages down dark alleys, knocks them over and goes through their pockets for loose grammar.
|
|
|
|
|
Well said!
It's obviously very different to the days of VB6 now, but that had the Variant type in it, and people used it - a lot. The whole concept of type safety seemed lost on VB 'developers'. And it was 40x slower than a native type. That didn't matter though, becuase if it could be done in VB it wasn't that important anyway.
Regards,
Rob Philpott.
|
|
|
|
|
It's not the tool, it's what you do with it that matters.
It is such a contentious issue that it is simply not possible to make generalisations on the topic.
I work with VB and C# - there really is not much of a difference for most of what you will need in .Net.
I have a preference for C#, but it is a preference as I can do everything I need to do in C# just as well in VB.
In defence of VB - there are some great developers and article writers out there - Sacha Barber[^] springs to mind.
“That which can be asserted without evidence, can be dismissed without evidence.”
― Christopher Hitchens
|
|
|
|
|
tmik wrote: Is there any one who can pin point the things VB can't do while other languages can do.
Eh, where do I start?
You can't write a Linux device driver with VB and you can with some other programming languages.
You can't write an OS kernel with VB and you can with some other programming languages.
You can' write any real-time software with VB and you can with some other programming languages.
You can't write a Chrome extension with VB and you can with some other programming languages.
You can't extend the syntax of VB with VB and you can extend syntax of some other languages using those languages.
|
|
|
|
|
Nemanja Trifunovic wrote: You can't extend the syntax of VB with VB and you can extend syntax of some other languages using those languages.
Not sure what you mean by 'Extend' but I have this in all my VB code so that I don't need to use delegates with cross thread calls:
Module Extensions
<Runtime.CompilerServices.Extension()> _
Sub SynchronisedInvoke(synchMe As ISynchronizeInvoke, action As Action)
If Not synchMe.InvokeRequired Then
action()
Else
synchMe.Invoke(action, New Object() {})
End If
End Sub
End Module
“That which can be asserted without evidence, can be dismissed without evidence.”
― Christopher Hitchens
|
|
|
|
|
GuyThiebaut wrote: Not sure what you mean by 'Extend'
I mean like with Lisp macros. For instance, Scheme doesn't offer any out-of-the box support for object oriented programming, but because it has Lisp-type macros, people wrote extensions (such as ScmObj[^]) that turn Scheme into an OOP language.
A nice explanation of Lisp macros can be found here: http://lists.warhead.org.uk/pipermail/iwe/2005-July/000130.html[^]
|
|
|
|
|
I see what you mean I was looking at Haskell recently(can't claim I understood it).
“That which can be asserted without evidence, can be dismissed without evidence.”
― Christopher Hitchens
|
|
|
|
|
tmik wrote: Is there any one who can pin point the things VB can't do while other languages can do. Surely I cannot: In my opinion, VB programmers can do all the weirdest things I'm not even able to imagine.
Veni, vidi, vici.
|
|
|
|
|
I currently use both VB.Net and C# at work. Newer projects are all C#. However one feature I sometimes miss:
VB.Net shows you Error pretty much as soons as you write them. For C# you have to recompile the whole lot before you even know that you have errors
Still I like c# way more. Especially Linq and Lambda Expresseions are a PITA in VB.Net.
|
|
|
|
|
Do you want a pointer on what vb can't do. Some times it is hard to point out specifics. Maybe some of the C++ guys will chime in with a few pointers.
|
|
|
|
|
tmik wrote: Is there any one who can pin point the things VB can't do while other languages can do. Is that the differentiating factor you use to guage whether one language is better than another? If so, then no answer will suffice.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Show me a community that obeys the Ten Commandments and I'll show you a less crowded prison system." - Anonymous
|
|
|
|
|
VB:
Dim num As Integer
C#:
int num;
For every integer I declare, I have to press ~10 more keys in VB than C#. It gets worst as my code becomes longer and you end up seeing a ton of Dims and unnecessary text. It takes longer to read through, iffy looking syntax...
What exactly is a 'Dim' anyways? If you research the answer to this, you will realize that it's definition is not intuitive anymore and wrongly used based on what it's supposed to mean.
|
|
|
|
|
That's easy, C/C++/C# style "pointers".
That alone makes image processing SOOOO much easier.
|
|
|
|
|
Here's one I run into almost everyday:
When I override Equals(), I must also override GetHashCode(). Most Hashcode calcs require math that will quickly overflow an integer.
No worries, I can simply turn off overflow checking and let it overflow - the function still performs properly.
Here's the rub: in C# I can leave the assembly as checked, and just mark my GetHashcode() method as unchecked. Can't do that in VB. You can only mark the entire assembly as checked or unchecked.
At least, that's the way it was in 2008. Stopped using VB at that point.
|
|
|
|
|
Several; the limitation that comes to mind first is that in VB.net you can't define an event based on a delegate that returns a value.
The only places I see VB.net as better than C# is in how to declare an Extension Method and VB.net's support of method-scoped static variables.
VB.net has a lot of historical baggage that weight it down.
C# is better than VB.net because C is better than BASIC.
|
|
|
|
|
VB can do anything other languages can do, only worse.
Actually, the real problem isn't the language. It's the people who tend to use it because it's "easy." Using spray paint is easy too, as long as you don't use it well.
|
|
|
|
|
Curly braces
modified 20-Oct-19 21:02pm.
|
|
|
|
|
...Till my birthday for those that can't remember. Code Project is 15th November due to it being in Paedophiles Paradise. I'm the 16th November, greatest day on Earth especially here in Oz.
Coopers Sparkling Ale going down a treat.
Michael Martin
Australia
"I controlled my laughter and simple said "No,I am very busy,so I can't write any code for you". The moment they heard this all the smiling face turned into a sad looking face and one of them farted. So I had to leave the place as soon as possible."
- Mr.Prakash One Fine Saturday. 24/04/2004
|
|
|
|