Jump to content
  • Advertisement
Sign in to follow this  
Vladk10000

Win32 vs. Visual Basic?

This topic is 4828 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm just wondering, what's the point of Win32 if you can use Visual Basic to do the same thing? For example, in VB don't you just click on whatever you need and paste it into your window without any use of code? I'm not sure why you would want to write code if there is an easier way to make a window. Does this have to do with making games and you wouldn't be able to put your game(DX or OGL) into a window that you made in VB? :S I know someone that's good with VB(and doesn't know C++ or Win32) and he asked me why I'm learning Win32 if there's a much easier way to make windows and stuff like that and I didn't know the answer to the question because everyone said that I should learn Win32 before DirectX and OpenGL.

Share this post


Link to post
Share on other sites
Advertisement
You answered your own question -- it's a good idea to learn [the basics of] Win32 before getting into DirectX and/or OpenGL. You'll be able to understand what's going on in Windows a lot better because of it.

Share this post


Link to post
Share on other sites
Should this even be about Win32 "vs." Visual Basic? Though I've only touched Visual Basic once in the past five years, I'd guess Win32 and VB can and do work together often. The whole point-and-click for easy GUI creation is what puts the 'Visual' in Visual Basic.

Let's say you wanted to download the free .NET sdk with the command-line tools. You'll have the VB compiler, but not the IDE which allows easier development with a GUI editor. Without knowledge of .NET, you'd probably be lost without the IDE and this is where knowing about Win32, MFC, .NET, or whatever helps. This is even more true when dealing with DirectX development.

Share this post


Link to post
Share on other sites
With VS and its dialog resource editor, you have pretty much the same click n drop functionality as VB. Its just a little more indepth than VB.

Share this post


Link to post
Share on other sites
A few things...

1) You can't claim to know anything about how Windows works if all you know is VB. People that do know Win32 will doubt your competence as a programmer as well, rightly or not.

2) Win32 is far more powerful than VB, unless you mean VB.NET...you didn't really specify.

3) Performance. Win32 code in C++ is faster than VB, though VB.NET is close in performance.

4) C# is a much less noobish language than VB. Professional games are not written in VB (there may be a few exceptions that I'm not aware of, please enlighten me if so). This isn't a flame, it's a fact. It's pretty much a change of syntax that will give you more respect and probably better paying jobs. C# also lets you do some "unsafe" things that VB doesn't allow.

Share this post


Link to post
Share on other sites
Quote:
Original post by timmay314
A few things...

1) You can't claim to know anything about how Windows works if all you know is VB. People that do know Win32 will doubt your competence as a programmer as well, rightly or not.

2) Win32 is far more powerful than VB, unless you mean VB.NET...you didn't really specify.

3) Performance. Win32 code in C++ is faster than VB, though VB.NET is close in performance.

4) C# is a much less noobish language than VB. Professional games are not written in VB (there may be a few exceptions that I'm not aware of, please enlighten me if so). This isn't a flame, it's a fact. It's pretty much a change of syntax that will give you more respect and probably better paying jobs. C# also lets you do some "unsafe" things that VB doesn't allow.


Oh yea!!! You the man!! every time say that in a forum, my rating drops.



Its nice to know someone has some insight on this topic. Sometimes, programmers "shun" out the people who are telling the cold truth of C# and VB.

I would agree with timmay314, go with pure Win32 & C++ first.

Share this post


Link to post
Share on other sites
Quote:
Original post by Vladk10000
I'm just wondering, what's the point of Win32 if you can use Visual Basic to do the same thing?

You can't always use VB to do the same thing, and theein lies the problem. VB only supports COM/ActiveX/OLE objects with Automation, meaning COM interfaces that don't implement the IDispatch interface are inaccessible. This is why VB couldn't access DirectX initially, until an Automation control for it was introduced.

Visual Basic (6) is essentially deprecated now, with the advent of VB.NET. The latter is a much more powerful language and has access to almost all of the .NET Framework's functionality (certain types available in C# are not available in VB.NET, but those types are not available to most .NET languages either, anyway), but it has the downside of requiring the .NET Framework, which remains a consideration for now.

Unless you really need access to the low-level system functionality exposed via C++/Win32 or the Native API (Nt* calls), VB (6) is an excellent introductory and production language. The majority of programmers who knock VB don't know it and use it inefficiently - and then blame it for their own errors. Simply put: pick the easiest tool that lets you do what you want to do.

Happy hacking.

Share this post


Link to post
Share on other sites
VB can be extremely easy to set up for a beginner. The IDe allows programmers to 'drag and drop' all their controls directly onto the form and then program events for each control. This approach is perfect for business aps and other programs where all that is needed is a simple form and performance is not key.

C++ and Win32 are undoubtably faster (due to the fact that it has fewer layers of APIs to sort through). This may or may not be overkill for your project.

Basically, just pick the best tool. ometimes (like most 3D games), you will only want a very simple window and decent performance. This is when c++/win32 shine. If you need many complicated controls and performance isn't key (either a business app or a simple game), then VB may suffice.

Share this post


Link to post
Share on other sites
The problem with VB is that it's not a true OOP language, where as C++ is. If you want full OOP capabilities (polymorphism, inheritance, etc) you can't use VB. These capabilities can make life much easier when it comes to big projects.

Share this post


Link to post
Share on other sites
Quote:
Original post by Leo_E_49
The problem with VB is that it's not a true OOP language, where as C++ is.

In that respect, how is C different from VB? Different languages - I don't see a problem here.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!