Assignment Instructions: For this assignment, one needs
to review some of the materials on Java for problem solving in general
or for Scientific and Engineering Computations (SEC) in particular.
There are a number of issues you need to keep in mind while carrying out this review:
Take into account your background and applications
of interest (you may refer back to your
answers for assignment 1) and see whether
Java and related available resources would
adequately address the needs of your application.
Consider other relevant works to your interests
and whether any may have used Java for
visualization or simulations or perhaps both.
If Java would not be a suitable language to
use for tackling, say, your problem then explain
the reason(s) behind that.
Provide as much technical details as you can.
Narrow your review to certain aspects or issues
and always opt for thoroughness and depth.
If possible, provide links to any references
you may use in your review.
Complete assignment and parallel computing links: http://osprey4.npac.syr.edu:7777/cps615-fall97/index.html
Currently, Lexis-Nexis is moving part of its resources onto the Web in a new website called Xchange. There is not much information on it (because it has not opened yet), but it might use Java/HTML tools to access Lexis-Nexis database information. If this is true, then this would be large step towards integrating the web for legal research and communication. I will be curious to see which way they take this technology in the upcoming weeks.
Because Java is as of now not a true compiled language, Java cannot achieve the same speed in searches and retrievals as a native compiled language such as C or C++. At the server side of a legal database, user interface is less important and actual speed is more important. The faster the server can search, the more searches it can accomplish and therefore the more billing hours the company can collect. Because these legal database companies are out to make money, at the present time there would be no advantage to changing over to a database format written in Java.
Currently, there are a lot of companies working
on classes to allow Java to access and work with existing database technologies.
There has been a push for Java to release a standardized SQL-type server,
and even some JDBC (like ODBC for windows) drivers released to try and
do some of the work of windows-based programs (e.g.,
a company working on a Java class library with these ideas in mind).
For all of these improvements in Java technology, the advantage to moving from a C/C++ windows client user-interface to a Java user-interface are small for legal databases. For the most part, law firms and judges use standard PCs to do their legal research. No workstations and very few macintoshes (although there are watered down versions of all the client software for macs) are used. Therefore, Java being platform independent is not useful to a client site. Furthermore, most users of legal database do not want to have to run their searches through browser -- especially with the internet browsers 4.0's problems with crashing. A stable, fast and clean interface is needed, and through the use of a C/C++ windows environment (like is used in the creation of browsers, word processors, spreadsheets, etc.) a good interface is created which can access the database and return results in real time.
One advantage of Java is that it is more secure than C/C++; there is less of a chance of a crash (because there are no memory pointers which is the cause of most C/C++ GPFs and crashes). While these are definite advantages for most application, a well written C/C++ code with solid, well-tested code can overcome these problems. Java does not seem to be as crash-proof as it is made out to be (e.g., Saleh's attempted demonstration of his Java program on Tuesday, September 23, 1997). Java is still a very young language, and it would not be wise for a legal database company to risk its database just yet with access through a java applet.
Besides speed, Java is also not as stable as a language such as C/C++ which has been around for a longer time. The new Java 1.1 changes many things in the old Java. Java has not reached the point where the class libraries have reached a stable state. While C/C++ class libraries are changing (e.g., MFC has been improved -- or at least changed -- a number of times, and new visual libraries are always being created), the current visual class libraries work well and have been proven to work well.
For legal databases, the future is as of yet unclear.
Because Java is still in its infancy, it is hard to predict how Java will
evolve in the upcoming years. It might be true that five years from
now, all legal database user-interfaces will be run as a Java applet in
a desktop dominated by the world wide web. Or perhaps, Java will
become only what it is now -- a way to put fancy graphics and spinning
buttons on a web page. It is too early to predict the future of Java,
but for the relatively near future, C++ will probably dominate the legal
database server and client products.