10 ms·
> but your average C# program requires writing a hell of a lot more boilerplate code than your average VB6 program Not actually true. I just created a new C# W
by teh_klev 5y ago
> but your average C# program requires writing a hell of a lot more boilerplate code than your average VB6 program
Not actually true. I just created a new C# Windows Forms application in VS, dragged a button onto a form, double clicked and it took me right to the event handler ready for me to do something. There's no additional boilerplate or ceremony required.
Now sure there may be a whole bunch of code sitting in the "Form1.Designer.cs" partial class, but that's for the designer to manage, not you. And VB had this as well but the VB environment hid this until you went looking for it.
Writing Windows Forms apps in C#/VS2019 is as easy as it was back in the VB5/6 days. I say this as a former VB4/5/6 (and, cough, ahem, MS Access) user knocking out all sorts of stuff back in the 90's.
- laumars 5y agoThere’s more to writing software than just dragging a button onto a form ;) at some point you’re going to want to write your own classes, or manage the existing automatically generated ones. I’ve written sizeable software in both VB6 and C# (both professionally too) and yes, what I said is true about C# being a more verbose language. This isn’t intended as a criticism of C# either. It’s just a natural side effect of C# giving the developers more control. Plus there’s also a C vs ALGOL type argument with regards to which is easier for a newbie to read and write. C# might produce highly readable code to those already familiar with C-syntax but VB6 is ostensibly executable pseudocode. That alone counts for a lot when talking about the accessibility of programming languages.
- teh_klev 5y ago> There’s more to writing software than just dragging a button onto a form Clearly, but that wasn't my point. C# isn't a more verbose language, if anything it's more concise. My point was to refute your assertion that "your average C# program requires writing a hell of a lot more boilerplate code than your average VB6 program"...which isn't true. The C vs ALGOL type argument doesn't really stand up for me. I have junior devs on my team who've arrived straight out of bootcamps, college, self-taught etc with a broad spectrum of shallow language skills (PHP, VB, VBA/Script, Java, Javascript), and none of them have trouble dropping into C# world when they've never used it before. C# isn't any more difficult to learn than VB or PHP. Getting up to speed with the .NET framework is a much larger challenge for them than picking up C#.
- laumars 5y agoI think we are going to have to agree to disagree on this. But FYI, VB6 isn’t .NET. You might be thinking of VB.NET. And if you were, your arguments would be correct. VB.NET is an utterly pointless language. But VB6 is a different beast entirely (and predates .NET by several years)
- teh_klev 5y agoI know exactly what the differences are between VB5/6 and VB.NET and also saw the futility of adopting VB.NET for greenfield projects. I am no spring chicken. In the 90's I was neck deep in the land of COM/DCOM and CORBA. Our proof of the pudding, for the stuff we were building to talk to CORBA endpoints, was whether our VB5/6 apps could consume our bridge libraries and start passing sane data backwards and forwards with some janky J2EE horror show. And then we did the same with .NET1 (beta) via COM Interop to those libs etc etc. This is why I know the subject matter well, even if it is 20+ years ago. Anyhoo, that's my appeal to authority, but I'll agree to disagree.
- laumars 5y agoI was a freelancer back then. So worked across several different stacks. VB6 was my goto for RAD. Delphi for performance. Wasn’t keen on C++ back then and the less said about Java (with regards to desktop applications) the better. I remember hating .NET v1 beta but I can’t for the life of me remember why. C# has definitely grown on me since but ironically these days I don’t touch Windows (nor even write GUI applications).
- teh_klev 5y agoAye, I rarely touch desktop stuff these days. Most of my efforts now get deployed into our Azure environments these days, which I have to confess I bloody love. I used to work for an ISP and Webhoster back in the 2000's building out provisioning and billing apps. With Azure I sure don't miss having to manage fleets of physical servers any more, even the big iron VM boxes we ran.