Hi Everyone
I would like to get into software developent using a programming
language like c++, java or pl/sql for oracle.
Most professional programmers know (and routinely use) more than one
language at some point in their careers. I would say that if you are
already here, asking this question, then you have already had some
exposure to programming. Expand on it! That is my advice. You can skip
the rest if you want, but that is the essence of my advice. Don't
limit yourself to one "language" -- learn two or three, and learn how
to make them work together.
Java and C++ are very portable languages, yet you also mention a
proprietary language like PL/SQL for Oracle (of course, Oracle itself
runs on almost every platform known to man...) If you have had any
previous exposure to Oracle, it may be worthwhile to try to expand on
it just so you can get a job. You can take the OCP tests without
having had any previous courses, but it would be tough to learn all
there is to know to pass them on your own unless you have constant
access to an instance of an Oracle database (9i or 10g) where you
could try things out. And you should already be a whiz at SQL
(ANSI/ISO-SQL, which you could pick up on a different platform. Oracle
SQL has its quirks, but you can learn the basics on many different
platforms). There are books with practice OCP exam questions,
published by Oracle Press, which will give you an idea about where you
stand and what you need to learn in order to pass them.
[If you want to develop applications which *use* Oracle as a back-end,
you can skip most of the rest; however, if you'd like to have the
option of becoming an Oracle DBA, read on...]
So you want to learn Oracle to become a DBA? Here's a little tip:
You can look around for some used hardware which meets the minimum
requirements for installing an Oracle server, install a free or very
cheap Linux OS and download Oracle 10g (Linux version) for free
(developer license, free to sign up online, then download the SW). I
would get a cheap tower PC (as cheap as possible), fill it up with as
much RAM and hard disks as you can afford, and dedicate it to running
*only* Linux and Oracle. The Oracle server is such a hog, you'll be
glad you did this! Network this PC (you can use a peer-to-peer LAN
network OK, but use static IP addresses) to a machine running Windows
or Linux, where all you need to install is the Oracle client. There
you are, you now have a perfect sandbox for developing applications
running on Oracle!
For the server, I would buy one used tower PC (with space for between
3 and 5 additional HDD) with at least Pentium-III, 512 MB RAM and one
120 GB disk minimum (should be possible for £300 or less, plus a
little extra for more HDD capacity and/or RAM). Buy two or more 120 GB
HDD if you can afford them; don't buy HDD with more than 120 GB,
though, because you might have trouble with Linux since the kernel
only recently has added support for HDD > 120 GB. Install the most
recent version of Linux (I'd recommend Red Hat or Novell/SuSE, or
perhaps Debian or Mandrake if you're into Linux already and are
familiar with these). Read all the Oracle installation guides BEFORE
you try to install either Oracle OR Linux because you never know what
additional minimum requirements newer versions of Oracle stipulate.
It's good to get used to running the Oracle server on Linux because
many jobs which want Oracle also want some kind of Unix/Linux
background.
I have no idea where to start from. Which language is there more demand
for. Looking at jobs there seems to be a better chance in getting a
java job rather than a oracle or c++ job.
Also is java and oracle a good combiantion?
Is c++ and java a good combination?
I am fairly to o programming. I have started to learn c++ but find it
a bit tought on my own. Java I am also familiar with.
I never did any Java myself, but it is said to be one of the "family"
of C languages as far as the notation and syntax goes. However, even C
and C++ have very different "mindsets" ... many people who claim to
use C++ just use it like C and call "new" and "delete" instead of
"malloc" and "free" ... Are they C++ programmers? No. Obviously, they
miss out on much that the language has to offer.
Java is an abstraction layer above both of these languages since it
hides all aspects of memory-management from the (novice?) programmer
(ducking and hiding from all the Java flames that will now be directed
my way ... hey, after all, this *is* the C++ forum?? <g>) Whether or
not this is a *good thing*, is yet another flame-bait which I will try
to avoid.
But that is one of the main differences between Java and C++: with
C++, you can get much closer to the hardware than with Java. For many
applications, this means more efficiency, speed, sometimes more
security, and above all -- more robustness when it is done well! For
others, perhaps just the opposite -- there are many excellent things
written in Java (e.g. GUI applications which need only database access
via JDBC) which would be overkill in a more low-level language. When
you factor in things like maintainability, cross-platform portability,
security, etc., the picture sometimes shifts depending on the
application's requirements.
Also whci types of appliactions are developed with c++ and where do I
have to start from inorder to get solid knowledge of the language.
For kinds of applications written in C++ ... Google is your friend!
Where does one start to get solid knowledge of the language? Google
*this newsgroup* (as well as comp.lang.c++.moderated) for threads
having "book" or "books" in the subject line. Then read the ones most
frequently recommended and -- start programming! (of course, you'll
want to download and install one of the free compilers so you can
compile the sample code ... again, Google *this newsgroup* for
messages having the words "free compiler" in the subject line).