June 15, 1997
June 15, 1997
June 18, 1997
2.473.1 - 2.473.9
Using Java To Develop Educational Engineering Software
John A. Reed, Abdollah A. Afjeh The University of Toledo
Introduction One of the most exciting recent developments in software technology is Java™, the programming system developed by Sun Microsystems Inc.1 Since its introduction in early 1995, both the technical and mainstream press have been ﬁlled with articles about how Java will revolutionize the nature of the World Wide Web (WWW), client/server application development, and the economic model for software delivery. With all of the media hype, it is easy to lose sight as to what Java is, and why it is so interesting. For many people, Java is simply a way to add “ﬂash” to otherwise static WWW pages. However, what is truly exciting about Java is that, for the ﬁrst time, it is possible to write highly interactive, graphical applications which are platform-independent and can be transported across the WWW. These features, combined with the availability and pervasiveness of the Internet and WWW, make Java an attractive tool for developing and distributing educational software.
Background To understand the potential beneﬁts of Java for educational software development, it is necessary to understand some of Java’s main features. First of all, Java is a general purpose object-oriented (OO) programming language offering OO capabilities such as data abstraction, encapsulation, polymorphism, and inheritance2. Object-oriented programming makes it possible to write robust, modular code which is easily modiﬁed and extended. Java was designed to be syntactically similar to C++, which is currently the most popular OO language. However, it was designed to be simpler to learn than C++, and thus removes many of C++’s shortcomings which make it complex and confusing. In addition, Java adds many of the better object-oriented features available in other object-oriented languages which are missing in C++. The most notable enhancements are the elimination of pointer-arithmetic, and the addition of automatic memory management (garbage collection).
The most signiﬁcant feature of Java is the ability to create extremely portable applications. Unlike traditional programming languages which generate programs which are platform speciﬁc, Java code is compiled into an architecturally neutral ﬁle format (byte-codes) which permits a compiled Java program to be transported to platforms of differing architecture. The Java program can then be run on any computer which implements a Java interpreter and run-time system known as the Java Virtual Machine (JVM). The use of byte-coding and implementation of the JVM allows a Java program to achieve a high degree of portability: a Java code, compiled into byte-codes is portable to any machine which implements the JVM. This makes it possible to write a program once, without regard to a speciﬁc platform, and run it on any computer platform which implements the JVM.
Reed, J. A., & Afjeh, A. A. (1997, June), Using Java To Develop Educational Engineering Software Paper presented at 1997 Annual Conference, Milwaukee, Wisconsin. https://peer.asee.org/6876
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 1997 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015