Electronic Design

Building structured applications—Java is not just a programming language. It's a collection of technologies built around a programming language called Java. Programmers of Java build applications within this structure technology. They incorporate standard Java classes as necessary, and build new classes when needed. Java 2 added new features. More importantly, it provided a coherent framework starting from the base, working up through the various editions and technologies. The latest additions employ standard Web technologies, like XML and SOAP.

Java APIs
Java application programming interfaces (API) are implemented as Java classes. The following are just a few of the available APIs:

  • Java Real Time
  • Java Foundation Classes (JFC)
  • Swing—user interface
  • JDBC—database
  • Remote Method Invocation (RMI)
  • Java for XML (JAXP)
  • Java for XML Messaging (JAXM)
  • Java Sound
  • Java Media Framework
  • Java 2D and 3D graphics
  • Java Naming and Directory Interface (JNDI)

J2 Micro Edition (J2ME)

  • Targets embedded devices
  • Modular architecture
  • Uses one configuration
  • Uses one or more profiles
  • Uses compact JVM

J2ME Configurations And Profiles

  • Connected Device Configuration (CDC)
  • Connection Limited Device Configuration (CLDC)
  • Foundation Profile—base for other profiles
  • Mobile Information Device Profile (MIDP)
  • Personal Profile Specification

The Language
Java was designed to incorporate the best programming methodologies, while eliminating error-prone techniques found in other programming languages.

Features

  • Object oriented
  • Garbage Collection
  • Class can support multiple interfaces
  • Name spaces
  • Multithreading
  • Array of reference checks
  • Strong type system

Eliminates

  • Pointers
  • Multiple inheritance

J2 Standard Edition

  • Targets desktops
  • Web browser plug-in
  • Runs standalone Java apps
  • Apps can link to J2EE apps
  • Uses standard JVM

Java Technologies

  • Java Platform Debugger Architecture (JPDA)
  • Java Beans
  • Java Spaces
  • Message Queue
  • Java Server Pages
  • Java Servlet
  • Java Server Faces
  • Web Start
  • Java for the Advanced Intelligent Network (JAIN)

Ancillary Technologies

Java is utilized in a number of technologies, such as:

  • Jini—spontaneous networking
  • OSGi—home gateways
  • Jiro—storage management

J2 Enterprise Edition (J2EE)

  • Targets servers
  • Runs server-based apps
  • Apps communicate with J2ME/SE
  • Supports Enterprise Java Beans
  • Works with Web servers like Apache

Java Virtual Machine

  • Base technology providing portability across platforms
  • Executes applications compiled to Java byte codes
  • Provides garbage collection
  • C Virtual Machine—portable C JVM implementation
  • Hot Spot—incremental optimizing compiler technology

Reading The Java Blueprints
Don't expect to learn all about Java from this one page. There simply isn't enough room here. Books have been written about most of the topics listed above.

Java incorporates a plethora of specifications and architectures centered around the Java programming language. The presentation above shows the major components, starting with the Java Virtual Machine (JVM), the execution engine for Java applications. Many more Java-related APIs and technologies aren't listed due to limited space.

A Sun-sponsored standards group called the Java Community Process (JCP) handles the language, APIs, and architectures. JCP involves a wide range of groups and users that propose, refine, and develop Java Specification Requests (JSRs). A JSR provides a definition for the various APIs and technologies listed above. For a complete list, go to the JCP Web site, www.jcp.org.

Java has garnered an amazing following from both developer and company standpoints. Major players like IBM and Hewlett-Packard provide a range of services and products, including their own JVMs. Java runs on all major platforms, and a number of processors execute Java byte codes directly.

TAGS: Intel
Hide comments

Comments

  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
Publish