Secure Coding mailing list archives

Could I use Java or c#? [was: Re: re-writing college books]


From: michaelslists at gmail.com (mikeiscool)
Date: Tue, 14 Nov 2006 11:34:18 +1100

On 11/14/06, Crispin Cowan <crispin at novell.com> wrote:
mikeiscool wrote:
On 11/14/06, Leichter, Jerry <leichter_jerrold at emc.com> wrote:

The joke we used to make was:  The promise of Java was "Write once,
run everywhere".  What we found was "Write once, debug everywhere".
Then came the Swing patches, which would cause old bugs to re-appear,
or suddenly make old workaround cause problems.  So the real message
of Java is "Write once, debug everywhere - forever".

Now, I'm exagerating for effect.  There are Java programs even quite
substantial Java programs, that run on multiple platforms with no
problems and no special porting efforts.  (Hell, there are C programs
with the same property!)  But there are also Java programs that
cause no end of porting grief.  It's certainly much more common to
see porting problems with C than with Java, but don't kid yourself:
Writing in Java doesn't guarantee you that there will be no platform
issues.

True, but that doesn't mean runtime portability isn't a good thing to aim for.

It means that compromising performance to obtain runtime portability
that does not actually exist is a poor bargain.

Runtime portability _does_ exist and the perfomance argument is old
and outdated now, there's the hotspot compiler that can beat the lazy
programmer (and aren't we all lazy?) and, although it's not java, you
may note Raymond Chens' optimisation challenge[1] with C# and C++ and
the results and discussion resulting.

And of course there are other reasons aside from just the runtime
portability to use Java; it's rich API, and so on.

-- mic
[1] http://blogs.msdn.com/ricom/archive/2005/05/10/416151.aspx


Current thread: