Quote:
Originally Posted by mike_bike_kite
...
Modern languages like Java are highly optimised and I find I can write board games like Checkers, Connect 4 or Othello and performance is never a problem - hell you can even write arcade programs in it. No doubt Fortran might be a little quicker but then I also have to factor in the time it takes me to write the programs. I'm not even sure if you can get assemblers these days for computers - I assume that C is the lowest language you could use.
...
|
The hardware you're running your Java on is probably more powerful than the top line Cray supercomputer in 1980... I hope you can run a checkers programs without bogging it!
I am a dinosaur programmer (COBOL). I took a Java course about 2 years ago, thinking about retreading. Here is the performance differences, both from Object Oriented, (all O O languages) and Java, per se.
O O - How do you change an object? Well... the object has the code that made it embedded as part of the object. You end up re-executing the code to get at the data, change the data, and re-encapsulate the data with the code. You think that isn't overhead? In a non O O language, you read the data raw, in your own data layout (or existing file layout you reuse), mod the data, and write. An order of magnitude less machine use. (But you have to know your data! (i.e. you have to know what you are doing.))
Java - an Interpreted language. Any interpretive language is an order of magnitude slower that a compiled language. (Sometimes more that one order of magnitude). A compiler writer is a special breed (I know just one.), who makes the compiled code efficient. Very efficient.
Garbage collection...Jeez, I thought that went out with BASIC in the early 1980's! IBM solved that problem back in 1975!!! (Had to! How else could you run 5,000 interactive terminals simultaneously on a machine the power of a Intel 486. One machine, 'cause it cost over a million dollars then!)
If you want to get rich as a programmer, figure out how to write a Java compiler that writes out non O O efficient code. Sell to the cloud world, where efficiency save the company money, unlike today's paradigm, where efficiency means nothing, because somebody else is paying for the hardware...
(Falls over after the tranquilizer dart hits, and the men in the white coats come over with the straightjacket..)