June 11th, 2010, 04:17 AM
C++ Java or .net.. when do you use each
I have a general question for all of you out there. I know there are tons of websites about it but I want to know YOUR view on it from your experience. There are 3 big programming world: C++/JAVA/.net.. I know some would argue there are others but lets take these as the major one given they are taught academically and relatively wide spread.
My question is , when do you use which?.. In other words, when you design an application, how do you make a decision on which language to use for your app?
I always fall in this trap and I don't know the right answer.(or the most right)
June 11th, 2010, 07:55 AM
The "right" answer would depend on the situation, but when you say .net I assume you mean just C# in which case you are asking the question: " I need to haul a load of bricks how do I know whether to use a old Dodge Truck/ a newer Chevy Truck / or a newer Ford Truck?" One might be slightly better in certain cases but they all do about the same thing so a lot of times the decision is made in terms of cost. If you have a team with experience with C# then you training them to use Java is a cost that Java would have to have noticeable benefits over C# to be selected in a situation.
The easier more common question would be do we build this as a client desktop app or a web app. That is like asking do we use the 15 passenger van or the compact pickup.
June 13th, 2010, 02:36 AM
Thanks for your reply.. I was assuming the cost is not a problem. lets say its only me developing a client app then I always fall in the above question trap.. yes I meant C# for ssome reason i keep calling it .net :s
ohh I knew somehow the idea of " not only these langauges are big", and thats why I said academically. becuase talking about how wide spread and what schools (as in universities) teach mostly, then I chose these 3 langauges.
Cobol! comooooon! isnt that dead yet? unless we are talking maintainance not development from scracth
June 13th, 2010, 10:36 AM
Cost is still the dominating factor though, as far as capabilities all of them are pretty much equal. An experienced programmer in any of the three will be able to program an average piece of code with about the same level of effort and time.
Java is easier to go cross platform with. C (not C++) is easier to use with embedded systems. C++ or C# are easier for interfacing with the Windows API's.
Comments on this post
June 14th, 2010, 07:42 AM
You said programming world in your OP and did not specify new or existing programing. So in total, COBOL is still around. Which makes sense because a large majority of programming is maintenance. But there is still new development that happens in COBOL (even if it is less than many other languages) .
Originally Posted by arasem
But going back to 3 main languages academically I would have to disagree. The main languages my school used (about 5 years ago) were Lisp, Python, Java, Smalltalk, C, and PHP.
June 14th, 2010, 06:07 PM
Originally Posted by E-Oreo
Amazing , last statement is what mainly i was looking for .
Thanks a lot for the hint
June 15th, 2010, 02:29 AM
Actually, the Windows API's are all written in C and some of them are absolutely antithetical to common practice in C++ (the use of non-const in params for instance).
C#'s run-time library is .NET so you get a lot richer and easier to use built-in library for Windows than you do with C++. .NET is available for C++ but it involves some ugly language extensions that are best left in the computing history bit-bucket. MFC is a C++ application framework for Windows that is actually superior in many respects to .NET, but it was poorly designed, used to be full of defects and probably isn't getting the care and attention it needs from Microsoft these days.
As an "academic exercise", limiting yourself to just those three languages to select from is foolish. In fact, if you intend to have much of a career, you'll need to be proficient in all three and at least handful of others eventually.
I no longer wish to be associated with this site.
August 6th, 2010, 08:28 AM
In my work, we still use COBOL. We use it for both for maintainance and development from scratch.