HotJava

HotJava . It is a modular and extensible Sun Microsystems Web Browser that can run Java applets .

It was the first browser compatible with these applets and was Sun’s demo platform for the then new technology. The product has since been withdrawn and Sun is no longer providing support for it.

 

Summary

[ hide ]

  • 1 Story
  • 2 Java language features
    • 1 Simple language
    • 2 Object oriented
    • 3 Distributed
    • 4 Interpreted and compiled at the same time
    • 5 Robust
    • 6 Insurance
    • 7 Indifferent to architecture
    • 8 Portable
  • 3 High performance
    • 1 Multithreaded
    • 2 Dynamic
  • 4 Produce applets
  • 5 Sources

History

Hotjava2.gif

In 1994 a team of Java developers started writing a mosaic browser clone called WebRunner, the name pays tribute to the Blade Runner movie .

In 1995 , John Gage and James Gosling brought some workstations to the technology, entertainment and development conference in Monterrey, California, to show WebRunner to the public. The lecture was a bit boring since nobody was interested in a Mosaic clone, so Gosling moved the mouse over the image of a 3D molecule , which rotated with the movement of the mouse and suddenly everyone in the room was impressed by how the Internet had become interactive. Gosling and Gage then impacted the audience with an animated line ordering algorithm that Gosling had written.

Java language features

Simple language

Java has a very fast learning curve. It is relatively easy to write interesting applets from the beginning. All those familiar with C ++ will find Java to be simpler, as certain features such as pointers have been removed. Due to their similarity to C and C ++, and since most people know them even in an elementary way, it is very easy to learn Java. Experienced C ++ programmers can migrate to Java very quickly and be productive in no time.

Object oriented

Java was designed as an object-oriented language from the beginning. Objects group both their data and the methods (or functions) that manipulate that data into encapsulated structures. The trend of the future, to which Java joins, points towards object-oriented programming, especially in increasingly complex and network-based environments.

Distributed

Java provides a collection of classes for use in network applications, which allow you to open sockets and establish and accept connections to remote servers or clients, thereby facilitating the creation of distributed applications.

Interpreted and compiled at the same time

Java is compiled, insofar as its source code is transformed into a kind of machine code, the bytecodes, similar to the assembly instructions.

On the other hand, it is interpreted, since bytecodes can be executed directly on any machine to which the interpreter and the execution system have been ported in real time (run-time).

 

Strong

Java was designed to create highly reliable software . It does this by providing numerous compilation and runtime checks. Its memory characteristics free programmers from an entire family of errors (pointer arithmetic), as pointers have been completely dispensed with, and garbage collection eliminates the need for explicit memory release.

insurance

Given the distributed nature of Java, where applets are downloaded from anywhere on the Web, security has become a vital need. No one would like to run programs with full access to your system from unknown sources on your computer. So security barriers were implemented in the language and in the real-time execution system.

Indifferent to architecture

Java is designed to support applications that will be executed in the most varied network environments, from Unix to Windows Nt, through Mac and workstations, on different architectures and with different operating systems. To accommodate such diverse execution requirements, the Java compiler generates bytecodes: an architecture-neutral intermediate format designed to efficiently transport code to multiple hardware and software platforms . All other problems are solved by the Java interpreter.

Portable

Indifference to architecture represents only part of its portability. Additionally, Java specifies the sizes of its basic data types and the behavior of its arithmetic operators, so that the programs are the same on all platforms.

High performance

Multithreaded

Today, applications that can only perform one action at a time are already terribly limited. Java supports language-level multi-thread synchronization (multithreading), especially useful in creating distributed network applications. Thus, while one thread is in charge of communication, another can interact with the user while another presents an animation on screen and another performs calculations.

 

Dynamic

The Java language and its real-time execution system are dynamic in the binding phase. Classes are only linked as needed. New code modules can be linked on demand, from a wide variety of sources, including from the Internet.

Produce applets

Java can be used to create two types of programs: independent applications and applets. Stand-alone applications behave like any other program written in any language, such as the HotJava Web browser, written entirely in Java.

For their part, applets are small programs that appear embedded in Web pages , such as graphics or text, but with the ability to perform very complex actions, such as animating images, establishing network connections, presenting menus and dialog boxes to then take action, etc.

 

Leave a Comment

Scroll to Top