Sometimes I heard people saying systems level programming in Java. And
I have seen some job posting also say that. Systems level programming
usually are done in C/C++. Can Java do that? Any examples?
please advise. thanks!!
An interesting question. One of the major attractions of a language like
Java is that it is platform agnostic; system programming is typically
platform specific. A device driver I write in C for HP-UX 8.0 is not
likely to run on AIX 5.0. Heck, a device driver for Linux kernel 2.4 is
not guaranteed to run on a 2.6 kernel!
You use the appropriate tools for the jobs at the appropriate layers.
Some people don't see the need for entity EJBs when they can implement
similar functionality in stateless session EJBs with "generic" JDBC
calls. Trust me, it doesn't always work that way...
I would suggest that you not consider use of Java to implement low-
level functionality. If you're willing to write to the JNI layer then
you're going to be bound to the platform at that juncture.
Peruse the javadocs to obtain confirmation that the Java framework
functions at a much higher layer than the "bits-and-bytes" details.
Why do you think that Sun provides methods such as
java.lang.System.getProperty( String s ) where s can be "file.separator"
or "path.separator"?
Answer: platform agnosticism.
And let's not even get into the use of the HAL (Hardware Abstraction
Layer) by M$...