Visual Basic is a practically simple Windows Programming Environment or more so an IDE
(Integrated Development Environment) with WINAPI
(Windows Application Programming Interface) & ActiveX Support.
While Programmers write lines of code in VC++ or Borland C++ to
generate even a simple Windows Based Program , RAD(Rapid Application
Development) Tools like Visual Basic make it easier for a programmer
to generate a customised Program for Windows .
Visual Basic uses OCX (object Containers) components which are actually
Runtime OLE automation programs used for developing programs for Windows.
This sure does limit a Visual Basic Programmer as an OCX control for every
type of development be it database based , game based etc may not be
available. He would also have to learn to develop OCX controls too.
But no problem ! Customised
controls can be created through the Visual Basic Control Creation Kit
which can be download from the Microsoft Site.
Delphi is another RAD tool from Borland (now Inprise) for 32 bit Windows Development.
A little low level in programming than Visual basic.
I. Visual basic is a lot relaxed in syntax checking while Delphi follows
conventional Pascal Rules for syntax checking.
Why i have used the word pascal which is your old dos based IDE ?
Because Delphi is nothing but Object Pascal . if you have done object
oriented programming in Pascal ,understand Windows programming techniques
and can put some Winapi code live in your program then you are a
qualified Delphi Programmer as for that matter I am.
II. Delphi attaches an OCX control or DCU (delphi compiled unit) control in binary form
built with it at run time while building a application making a Delphi based EXE
larger in size than a Visual basic one which makes Runtime calls to the OCX control when
at run-time,implying that the control will not be attached to Program but should be present
in the Windows System Directory.This makes Visual Basic Executables small
in size.
III. Delphi has a rather low level interface to Windows Programming as
with it comes the BASM (built in assembler) interface for programming
32-bit registers while Visual Basic does not give this facility.