Click to See Complete Forum and Search --> : Which programming language should I use?


avalon_rulz
February 7th, 2004, 01:05 PM
I'm hoping to get suggestions as to which programming language would be the best for a project I am going to start: Visual C++ or Visual Basic.

I want to create an inventory/point of sale system for a bookstore with the following requirements:
a) I need to network at least three computers and have a single database that updates stock changes immediately.
b) I need to interface with point of sale hardware such as a cash drawer, receipt printer, and barcode scanner.

I already know the basics of Visual C++ but I have no problem learning Visual Basic if it would be more appropriate. Which language would be easier, better, or more appropriate for programming a network, accessing the various point of sale hardware, and integrating a database?

Thanks for any advice...

kanji2150
February 7th, 2004, 01:29 PM
Definetly use C++.
It is much more reliable and you have control over many more aspects of the program.

phinds
February 7th, 2004, 02:35 PM
these days the arguments are more theoligical than logical. You'll get people who will vehemently insist that one or the other is better and its pretty much irrelevant. In any case, the argument should not be between VB6 and Visual C++, but between VB.NET and C#

Sam Hobbs
February 7th, 2004, 02:49 PM
I would say VB. Since you need to ask which to use, it would be better to use VB. VB is much easier than C++ and if you don't need the capabilities of C++ then use VB. I am not familiar with C# but it might be a good alternative to VB.

However this question is not a useful question. You should analyze the reqwuirements of your system before making descisions such as this. Programmers often use the development software they are familiar with but sometimes they realize after beginning development that the need something else. It can be very costly to redo what has been done, however if the requirement is included in the initial design, it might require only a few minutes to adjust the design.

If you begin development using VB then decide you need C++ for some reason, then you will would probably have wasted less time to go from VB to C++ than to go from C++ to VB. However that is a genralization and there are definitely exceptions.

aio
February 7th, 2004, 09:42 PM
If the project is inventory and/or POS I don't think there is any hardware components that could not be controlled by VB.

On the other hand, as a businessman, the issue of development cost is a real issue. I have not developed a fully C++ (or any C language) application but have read enough to consider that it costs more to develop in C++ than VB (assuming you know both).

That is unlike when I was an employee, that it would make me more happy to handle difficult projects because of the opportunity to earn more from overtimes. :)

This is just one thing (among many other things) to consider.

Andreas Masur
February 8th, 2004, 05:53 AM
Originally posted by phinds
In any case, the argument should not be between VB6 and Visual C++, but between VB.NET and C#
Isn't the above only a philosophical opinion as well? :cool:

Andreas Masur
February 8th, 2004, 05:57 AM
Originally posted by avalon_rulz
Which language would be easier, better, or more appropriate for programming a network, accessing the various point of sale hardware, and integrating a database?

Well...for networking and databases Visual Basic does very much for you already. Accessing the POS hardware, it kind of depends on the hardware itself, however, there would not be much of a problem to communicate with these POS's using C++ (in a dll) which gets called by a Visual Basic application... :cool:

Andreas Masur
February 8th, 2004, 06:06 AM
[Merged and moved threads]

beansoftware
February 11th, 2004, 04:03 PM
I suggest VC++ if I must choose between C++ and Visual Basic.

But I must say, the best choice is .NET technology (VB.NET or C#)

Yves M
February 11th, 2004, 10:18 PM
I also think that VB should get you started fine with a project like that.

In any case, I don't think any serious programmer limits themselves to just one language. Over time, you'll see the differences between languages yourself and if something is hard to implement in VB, you may well consider developing it in C++.


On the other hand, as a businessman, the issue of development cost is a real issue. I have not developed a fully C++ (or any C language) application but have read enough to consider that it costs more to develop in C++ than VB (assuming you know both).

I don't quite agree on this. It really depends on the kind of things you need to do. If you have to develop custom controls or access straight Win32 API, then VB is just a mess. Also, if your program or part of it should be portable, then VB can be ruled out.


But I must say, the best choice is .NET technology (VB.NET or C#)

I don't agree for a few reasons, which are, I agree, a bit ideological as well. First of all, .NET adds a lot of stuff to your application without much benefit (in many cases) and it's a pain for programs which have to run on 98, Me, NT4 and other old systems. Second, even if there is Mono, it's still not portable and third, both these .NET languages are rather purpose-designed languages, like VB or Java. That means that some stuff is easy to do but to do some other stuff, you really have to go out of your way to make it work. I'm not saying that they are bad, but just that you shouldn't rely on any of these as your sole programming language.

these days the arguments are more theoligical than logical.

There are quite a few technical differences between languages, but indeed, at least as in my experience, these differences tend to be obscured by beliefs. In pretty much any modern programming language you can program pretty much anything, provided enough knowledge and time. Some things are facilitated by the language (e.g. basic COM in VB, networking & threads in Java, Win32 in C++), some things are harder (e.g. Win32 in VB, custom controls and raw speed in Java, COM in C++).

So I'm sorry to say, but you have to pick the language as a function of your requirements, just like Sam pointed out. While we may make a (more or less) educated guess what you may need, this won't necessarily reflect the reality of your project.

bob44
February 21st, 2004, 03:01 PM
If you aren't too committed to either C++ or VB, you may want to consider something really different and look into programming it with PHP and MySql. You could set up your local network as an "intranet" using the same techniques used to build web sites. The concept of "web services" (especially using the "REST" approach) is a rapidly developing method of building very flexible enterprise systems.

I have programmed for many years in C, then in C++ and recently in Java. For my personal work, however, I have been programming web sites using PHP and MySql. Both are free, open source software ( http://www.php.net and http://www.mysql.com )

Although PHP and MySql are free, they are not lightweights. They are capable of handling some pretty heavy volumes.

You can find more information (tutorials,etc) on using PHP and MySql at www.sitepoint.com

A good book that presents a philosophical overview of using a "web-services" approach to software development is Loosely Coupled - The Missing Pieces of Web Services by Doug Kay.

Of course, to use this approach, you would need to know HTML. If you don't, there is a great tutorial at www.w3schools.com

This may be pretty far out from what you were asking, but it's just another approach you may or may not want to consider.

George1111
February 26th, 2004, 08:10 PM
Since you need to develop an application for a bookstore, it seems to me that if there was an application ALREADY DEVELOPED for a bookstore THAT YOU COULD GET YOUR HANDS ON THE SOURCE CODE, then you may well save yourself a number of months in the learning and developing cycle.

Now there just happens to be such a system available (and for free) as a sample application.

It may be a good point to start to see the possiblilities, extent of the problem, techniques employed - lets face it (unless you are so **** proud that you have to write every line of code yourself) it is a stupidity to completely reinvent an already invented wheel.

Of course I refer to the application developed under Visual Basic 6 with full source code (and for FREE).

Not sure of the exact link to find it but it is somewhere in Microsofts list of code samples for VB

Try Google "duwamish bookstore system" which will put you on the right track.

(alternatively, you could spend another 3 months wondering about what language to use, then another 2 years developing the system) What if you pick the wrong language ? You'll never never know!

Gook Luck!

PS I use VB6 simply because it is easy to learn and use. (for me)
Never found anything it couldn't do (in a Business Application environment).