Link to home
Start Free TrialLog in
Avatar of profjohan11
profjohan11Flag for South Africa

asked on

Programming languages

Good day all,

This might seem like a silly question, but I need more information to make a decision on which programming language to study as part of my degree.

I don't have a programming background and would just like to know in a short description for what the programming languages are used for. So I can have a better idea of what to base my decision on.  

Please help?

C++ (CSLA and CSLB)
or Java (JV7A and JV7B)
or C# (CSPA and CSPB)
or VB.NET (VBSA and VBSB)
or PHP (PHPA and PHPB)

Kind Regards,

Johan
Avatar of Mike Tomlinson
Mike Tomlinson
Flag of United States of America image

The "short" answer is that those languages can be used for just about anything!

Maybe you should go the other way around...figure out what you want to develop and we can help you pick the "best" language.

What are you interested in studying?
Web Applications
Windows Applications
Console Applications
Mobile Applications
Web Games
Stand-Alone Games
Web-Enabled Games
Platform Specific Games
Scripts/Utilities
etc...
Avatar of profjohan11

ASKER

Well I am interested in Linux and eventually making my own website. A specific skill I would like would be a programming language that can work with scriptin on Linux and Unix but I am doing Perl before one of these languages. And I am guessing Perl would cover that.

Would Java help me understand J2EE applications?
ASKER CERTIFIED SOLUTION
Avatar of Mike Tomlinson
Mike Tomlinson
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
The prelim course layout is as follows:

Computer Literacy (COML)
Processing and Logic Concepts (PLCS)
Program Design (PROG)
Software Engineering (SENG)
Relational Database Modelling & Design (RDMD)
MS SQL Server (MSQL)
Creating Web Pages (CWPD)
Main Programming Language:

 C++ (CSLA and CSLB)
or Java (JV7A and JV7B)
or C# (CSPA and CSPB)
or VB.NET (VBSA and VBSB)
or PHP (PHPA and PHPB)

Linux - Basic (ULNX)
Hardware Essentials (HESS)
Perl (PERL)
2nd Programming Language:

 (One of CSLA, CSPA, JV7A, J2EE,VBSA, PHPA)

Maybe this would make more sense see those are my main languages and second language options.

SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hi all,

I have been thinking about all the helpful questions and reading up on my own. I am currently stuck between C++ and Java. I am almost thinking to maybe learn C++ from what I understand it should then be easy to learn Java as well.

Also a question I have I found the following link:

http://en.wikipedia.org/wiki/Comparison_of_Java_and_C%2B%2B


Looking at one of the lines in the comparison I am wondering what is the difference between the below?

Write once compile anywhere (WOCA)       Write once run anywhere / everywhere (WORA / WORE)

Compile anywhere vs Run everywhere (the latter I think I understand).

Sorry for the silly question.

Johan
With traditional C/C++ (assuming you stick to only the ANSI standards stuff) you write the source but then have to compile it on the target platform using a compiler specific to that platform.  Theoretically you can have the same C/C++ source code and run it on both Windows and Linux...BUT you would need to compile it using a platform specific compiler so you end up with an executable that runs on the desired platform.  Thus you have a compiler for Windows that produces an EXE that runs on Windows...and a different compiler for Linux that produces an EXE that runs on Linux.  Hence the "write once compile anywhere".

Write once run anywhere means that you don't have to compile for each platform.  Instead, the bytecode (similar to source code but one step removed) is interpreted at run-time by the JVM for the platform on which it is running.  So you must have the platform specific JVM installed on the end machine but you do not actually have an EXE from the source code.  Theoretically the same bytecode can run an any machine that has a proper JVM installed on it.