Programming help, Visual Studio

Soldato
Joined
12 Jun 2005
Posts
8,395
Right, I'm in a bit of a dilema here, I'm helping my younger brother (18) to do some programming assignment. I did programming years and years ago and hated it, but I'm helping him with it anyway because he's stuck. He has to cover 4 different types of programming and suggest applications that they would be suitable and unsuitable for.

C++
Visual Basic (which I can do myself as it was the only program I liked at college and uni)
C#
J#

Google doesn't bring up any good sites that I can use information from and my brother has no notes from his lectures.

Can anyone suggest anything or give advantages and disadvantages over using a particular programming language? :)
 
Just a few ideas off the top of my head:

C++ - good for performance critical applications such as games, high demand databases etc. Disadvantages are that it's a lot more fiddly and requires a fair bit of optimisation in these cases in order to get it running smoothly.
Visual Basic - good as a beginners' language (that's debatable, but easy to learn nonetheless).
C# - general applications programming; easy to get a program up and running quickly in. However, as it's managed code, it's nowhere near as fast as languages like C++.
J# - not sure about this one.

I'm sure other people on here will be able to give a far more thorough list of advantages/disadvantages though :)
 
Last edited:
Thanks mate, much appreciated, I've not even used most of these programs so I can't give him first hand knowledge, but your explanations really help. Cheers :)
 
Inquisitor said:
Just a few ideas off the top of my head:

C++ - good for performance critical applications such as games, high demand databases etc. Disadvantages are that it's a lot more fiddly and requires a fair bit of optimisation in these cases in order to get it running smoothly.
Visual Basic - good as a beginners' language (that's debatable, but easy to learn nonetheless).
C# - general applications programming; easy to get a program up and running quickly in. However, as it's managed code, it's nowhere near as fast as languages like C++.
J# - not sure about this one.

I'm sure other people on here will be able to give a far more thorough list of advantages/disadvantages though :)

J# is a mostly Java compatible language that targets the .Net platform (like C#.) As such, it's largely a bridge for Java programmers/systems to ease porting to .Net. I suppose in broad terms you should be able to about as much as you can in C# (but I'm uncertain if it supports some of the latest refinements in C#, e.g. Generics... I suspect not.)

C#, J# and in fact all .Net languages make use of the .Net runtime, which includes a "garbage collector" which is like an automatic memory reclamation service. This means that a lot of the responsibility for managing memory traditionally borne by the programmer, is taken over by the machine which makes the programmers life easier and hopefully helps prevent many common programming errors to do with memory. By contrast, in C++ you must do all your own memory management. Forgetting to free allocated memory is known as a memory leak, and can be a common problem in C and C++ programs. (Having said that, it is still possible to have memory leaks in .Net programs depending on how you manage your object references though its far less of a problem than in C and C++.)

Note that later versions of VB (eg, VB.Net) targets the .Net runtime also, whereas earlier/older versions of VB (e.g. VB6.0) generates native Win32 application binaries.

My £0.02 worth anyway.
 
topbanana said:
Common misconception. In most cases it's 'about the same'.

How can it be about the same, unless the management is done in zero time with sero use of processor resources?
 
Because the .NET JIT-compiler has a much much larger program optimisation and instrumentation surface area to work with than a C++ compiler does at compile time. Optimisations at runtime are the way forward...
 
Back
Top Bottom