Business logic layer - what to use?
Alma J Wetzker
almaw
Mon May 17 11:58:55 PDT 2004
Alan Jackson wrote:
> Just one more stick on the fire. Last year I heard a talk by a fellow
> who I have a lot of respect for, where he said that at his company he
> has had them start doing all their programming in Java, even the
> compute intensive stuff. He is a technical manager at BHP petroleum. And
> when he says compute intensive, he means it. He also said that his
> old friends at Los Alamos (where he used to work) are using Java for
> comnpute intensive apps, because the performance hit is small enough that
> it is worth it in terms of being able to code up things more quickly.
>
> It sounds to me that with a little care and the right JVM, Java is competitive
> with C++. It doesn't really surprise me. I read a study about a year ago
> comparing C, C++, Perl, Python, Java, and Rexx. While C code was, on average
> faster than than perl, the difference was only a factor of 2. They had many
> programmers code up the same problem, and discovered that the spread in
> performance between programmers was greater than between languages. That is, a
> good perl programmer would write code that was faster than that written by a
> below average C programmer. My take away was that unless you are working on
> real-time systems, or massively compute intensive or some other constraint like
> that, ease of programming and skill level should drive language choice.
I believe that has far more to do with the programmer than the language. A
good programmer is not a factor better than an ordinary programmer, but an
order of magnitude better. (That is not 2 to 3 times better but 10 to 100
times better.)
That said, the most intelligent thing to do is code in the language of your
best programmer. The most expensive part of the code is the time your
programmers spend on it. Computing resources are, often, easy to upgrade.
For server or massively shared code, it makes sense to use a language that
will give the tightest code, and use the best programmers to get it. But even
there, it does not make economic sense to wring every cycle out of every line
of code. Optimise where the program spends the most time.
-- Alma
More information about the Linux-users
mailing list