Do I really need to learn Java?

Roman Suzi rnd at onego.ru
Mon May 14 15:20:18 CEST 2001


On Mon, 14 May 2001, Hanna Joo wrote:

> Hi, I am a newbie python programmer who ended up in programming without much
> previous experience in this field. My team wrote a small system in python
> (not understanding objects at all - it is horrible with globals everywhere
> ^__^ ) which works quite well. It was an experimental project and many will
> cringe if they see the program.
> 
> After this project, I studied python more in depth, and started writing
> simple programs using OOP concepts. Then a friend of mine studying CS
> suggested that I study Java instead of "not well designed (!!!!)" python to
> master the concept of OOP. I only had a few sessions with her, but to me,
> Java's sintax is just like C (never liked C) and is not as flexible as
> python. (Hate declarations, hate having to have classes, hate compiling..)
> As I mentioned earlier, we could come up with a small POS system generator
> using Python procedural style (I know, disgusting, but point is that it was
> possible).
> 
> I don't know much about languages to discuss their merits in depth, but to
> me, a newbie, python offers all that I need. Although I find Java and C
> interesting, I am not sure whether they do what I cannot do in python. I
> would love to learn other languages to broaden my horizon, I would like a
> language as clean and flexible as python (strong bias here as I know only
> python well)
> 
> Can somebody explain what the advantages/disadvantages of using Java (or
> C++) compared to python? And whether I will have to use Java in certain
> situations?

Your letter is asking for World Flame War ;-)

I learned many programming languages (from Forth to APL ;-),
of course including C, C++, Pascal, Assembler and, no surprise, Perl
and Python. 

For 3 years already I try to learn Java (it's "super cool", you know! And
widely used language;-). It's not that Java is difficult - no. 

But I failed to go further than trying byte-counting example from Sun's
tutorial. First of all those "fluffy" statement for nothing (to much to
time), then too many times I came across versions/libraries
incompatibilities. ALl that depressed my desire to learn Java.
After some mental effort, I tried to start learning though.
And stopped - after "learning" that bytecounting 
with Java works 500 times slower than in C and 250 slower 
than in Perl... 

I decided to return to learning Java later. 

Probably, you will be luckier than me and will love it one day.

If you want to run Python on Java Virtual Machine, you can use
Jython. 

Personally I can't see cituation where Java could be preferrable, except
if your company forces you to use it for maintaining existing
software. 

Java is also preferable for an universal applet-writing, as all major
graphic browsers try to support it.

I also know that some Java programmers like Java. It seems
a matter of tastes ;-)

It must be also noted, that Python is higher level than Java:

Assembler - C - C++ - Java - Python
<-machine                    human->


Sincerely yours, Roman A.Suzi
-- 
 - Petrozavodsk - Karelia - Russia - mailto:rnd at onego.ru -
 





More information about the Python-list mailing list