sick of vb

Started by
23 comments, last by gilfosh 20 years ago
Seriously consider Scheme.
Advertisement
Delphi is about the same thing as C++, only cleaner (less specials char, more textual terms, well structured) wich make it easier to learn and debug. It use the same end compiler than bc++ so the code is just as fast. With a minimum knowledge of delphi you can translate any code (c, c++ java) to it so anything from the win32 api to opengl and directx works exactly the same way.





--- At The Edge Of Time
--- At The Edge Of Time
Everyone else in this thread has been suggesting programming languages.

The problem I find with VB users, is that they don''t really understand how programs actually happen at all.

Lots of VB6 users seem to think that programs consist of "Forms" which you drag things called "Controls" into.

Whereas in fact, real programmers know that this is not really the case. What happens is, the VB6 runtime arranges things so that the programmer (or VB6 user anyway) gets roughly what they expect based on the contents of the "Forms" and "Controls", by taking control of the actual execution of the program.

It comes as a shock to most VB6 programmers that you can make a program with no form, no controls, which starts at the beginning and continues to run until it reaches the end.

This tends to be the metaphor used in imperitave programming languages like most of the above cited.

VB6 tends really towards a 4GL-style event driven system, whereas most of the above behave more "traditionally" like an imperitive language (i.e. Pascal).

Possible exception: scheme, which I know little about but may be a bit like Lisp, i.e. a partially functional language where execution order is determined by how the interpreter chooses to evaluate things.

Mark
That’s a very poor generalisation. Some, new VB programmers might think that way but I think your find a lot that are actually very knowledgeable and even have CS degrees. In my experience, MOST vb programmers understand completely about how programs are constructed and yet still choose to use VB. Making visual applications in C++ is a pain in the ass, to say the least. They tend to look ugly or simple, or both. Although writing on this level gives the programmer full control, they rarely are able to use that effectively.

MFC is poor. That’s all I can say... it is not designed very well. A better solution to visual application development is C++ Builder.

Visual Basic offers a simple, quick method to implement or prototype application projects. It hides the inner workings of applications, but does not remove the programmer from their programs. A Visual program written in visual basic still uses a lot of the same features as a VC++ application. Branches, loops etc etc. You can implement a binary tree in Visual Basic easily enough. And you might be shocked to learn that after the visual layer it is a full programming language! Shocking isn't it! It’s called Basic, and is very powerful. A lot of people don't like VB because they feel they have moved higher and therefore have the right to reticule those below them. This is particularly true about Java programmers, C++ ones aren’t that bad.. But that might be because they are often more mature.

Your statement would be true if Visual Basic did not contain any programming language at all, but it does. People say that VB does not teach basic programming skills. But that’s not true either. C and Basic are actually very very similar in language features at the upper most levels. But C goes lower (duh!). But I think your find that most business and a lot of other applications don't even need these features and could have been written in basic. I would also like to address something someone said. They said 'you can always spot a visual basic programmer who has moved to C because they always use the goto' (or something to that effect). But wait, doesn't C contain the goto statement? Don't other languages? Oh they do?! Wow... What you should have said is "You can always spot a poor programmer by how many goto's they use". I write for visual basic and NEVER EVER use goto's. I also don't use error control until I roll out the final version. Only a poor programmer thinks error control should fix all the stuff that is broken. Poor Programmer != VB Programmer

Strong Points:
- Very Good Debugger (The step though debugging process is very effective)
- Very Easy to read (Basic is nice because you don't end up with things like } } } )
- Very Fast Development times
- Strong Error Control
- Powerful interface


[edited by - Manip on March 26, 2004 7:36:34 AM]
quote:Possible exception: scheme, which I know little about but may be a bit like Lisp, i.e. a partially functional language where execution order is determined by how the interpreter chooses to evaluate things.
Scheme will act like a procedural language if you like. You can have the code:
(print "hello world!")(print "This is scheme.")(if (eq? 1 4)    (print "1 and 4 are equal")    (print "i and 4 are not equal"))

Which will print out a predictable set of strings.

However, if you are using the mred gui toolkit, you can have something like:
;; Create a dialog(define dialog (instantiate dialog% ("Example")));; Add a text field to the dialog (with a dummy callback procedure)(instantiate text-field% ("Your name" dialog void));; Note: MzScheme’s void procedure accepts any number of arguments;; Add a horizontal panel to the dialog, with centering for buttons(define panel (instantiate horizontal-panel% (dialog) (alignment ’(center center))));; Add Cancel and Ok buttons to the horizontal panel(instantiate button% ("Cancel" panel void))(instantiate button% ("Ok" panel (lambda (button event) (print "Ok clicked.")));; Show the dialog(send dialog show #t)


This seems more event based like Tk, Qt, or Awt. The places where you see void or lambda here are the event handlers.

This topic is closed to new replies.

Advertisement