Internet Foundation Classes
Encyclopedia
The Internet Foundation Classes (IFC) were a graphics library
for Java originally developed by Netcode Corporation and first released by Netscape Corporation on December 16, 1996.
and Netscape announced their intention to combine IFC with other technologies to form the Java Foundation Classes
.
Ultimately, Sun merged the IFC with other technologies under the name "Swing", adding the capability for a pluggable look and feel
of the widgets.
Because its technology has been merged to constitute Swing
and Java 2D
, IFC is now no longer maintained.
draw a lot of features from IFC:
However, Swing also improved IFC in a lot of ways:
in IFC:
To be compared with the equivalent Java Swing
code:
The last places, where to download the IFC:
All find from
The web-archive where is the last place to find really all files:
Additional you can still find IFC here:
Graphics library
A graphics library is a program library designed to aid in rendering computer graphics to a monitor. This typically involves providing optimized versions of functions that handle common rendering tasks. This can be done purely in software and running on the CPU, common in embedded systems, or being...
for Java originally developed by Netcode Corporation and first released by Netscape Corporation on December 16, 1996.
History
On April 2, 1997, Sun MicrosystemsSun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...
and Netscape announced their intention to combine IFC with other technologies to form the Java Foundation Classes
Java Foundation Classes
The Java Foundation Classes are a graphical framework for building portable Java-based graphical user interfaces . JFC consists of the Abstract Window Toolkit , Swing and Java 2D. Together, they provide a consistent user interface for Java programs, regardless whether the underlying user interface...
.
Ultimately, Sun merged the IFC with other technologies under the name "Swing", adding the capability for a pluggable look and feel
Look and feel
In software design, look and feel is a term used in respect of a graphical user interface and comprises aspects of its design, including elements such as colors, shapes, layout, and typefaces , as well as the behavior of dynamic elements such as buttons, boxes, and menus...
of the widgets.
Because its technology has been merged to constitute Swing
Swing (Java)
Swing is the primary Java GUI widget toolkit. It is part of Oracle's Java Foundation Classes — an API for providing a graphical user interface for Java programs....
and Java 2D
Java 2D
In computing, Java 2D is an API for drawing two-dimensional graphics using the Java programming language. Every Java 2D drawing operation can ultimately be treated as filling a shape using a paint and compositing the result onto the screen....
, IFC is now no longer maintained.
Differences with Swing
SwingSwing (Java)
Swing is the primary Java GUI widget toolkit. It is part of Oracle's Java Foundation Classes — an API for providing a graphical user interface for Java programs....
draw a lot of features from IFC:
- contrary to AWTAbstract Window ToolkitThe Abstract Window Toolkit is Java's original platform-independent windowing, graphics, and user-interface widget toolkit. The AWT is now part of the Java Foundation Classes — the standard API for providing a graphical user interface for a Java program.AWT is also the GUI toolkit for a...
, IFC were written in pure JavaJava (programming language)Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
, thus being (at the time) browser-independent. - IFC already provided two Layout managerLayout managerLayout managers are software components used in widget toolkits which have the ability to lay out widgets by their relative positions without using distance units. It is often more natural to define component layouts in this manner than to define their position in pixels or common distance units,...
s, that would be later included in the standard JDK - some IFC components were able to read HTMLHTMLHyperText Markup Language is the predominant markup language for web pages. HTML elements are the basic building-blocks of webpages....
content from URLUniform Resource LocatorIn computing, a uniform resource locator or universal resource locator is a specific character string that constitutes a reference to an Internet resource....
s, but the implementation was still far from reliable.
However, Swing also improved IFC in a lot of ways:
- IFC did not have a Model-ViewModel-view-controllerModel–view–controller is a software architecture, currently considered an architectural pattern used in software engineering. The pattern isolates "domain logic" from the user interface , permitting independent development, testing and maintenance of each .Model View Controller...
architecture - contrary to Swing, the Look and feelLook and feelIn software design, look and feel is a term used in respect of a graphical user interface and comprises aspects of its design, including elements such as colors, shapes, layout, and typefaces , as well as the behavior of dynamic elements such as buttons, boxes, and menus...
of IFC components was written in the components themselves, making it impossible to change it easily. - IFC components were not JavaBeans. IFC had a specific persistence mechanism, but it was a bit complex, and not compatible with the Java SerializationSerializationIn computer science, in the context of data storage and transmission, serialization is the process of converting a data structure or object state into a format that can be stored and "resurrected" later in the same or another computer environment...
API. - event mechanism was still raw, and the Event loopEvent loopIn computer science, the event loop, message dispatcher, message loop, message pump, or run loop is a programming construct that waits for and dispatches events or messages in a program...
sometimes needed to be accessed directly.
Hello World
This is the classic Hello world programHello world program
A "Hello world" program is a computer program that outputs "Hello world" on a display device. Because it is typically one of the simplest programs possible in most programming languages, it is by tradition often used to illustrate to beginners the most basic syntax of a programming language, or to...
in IFC:
To be compared with the equivalent Java Swing
Swing (Java)
Swing is the primary Java GUI widget toolkit. It is part of Oracle's Java Foundation Classes — an API for providing a graphical user interface for Java programs....
code:
External links
The last places, where to download the IFC:
- [ftp://ftp.uni-potsdam.de/pub/WWW/Netscape/navigator/plugins/ifc/1.0/ ftp-Server 1 Uni-Potsdam]
- [ftp://ftp.uni-potsdam.de/pub/WWW/clients/netscape/plugins/ifc/1.0/ ftp-Server 2 Uni-Potsdam]
- [ftp://ftp.uni-potsdam.de/pub/WWW/netscape/navigator/plugins/ifc/1.0/ ftp-Server 3 Uni-Potsdam]
- [ftp://ftp.ruhr-uni-bochum.de/.subdisc1/local/jk.collection/ ftp-Server Uni-Bochum]
- [ftp://ftp.anu.edu.au/sunsite/mnt/disk3/WWW/netscape/navigator/plugins/ifc/1.0/ ftp-Server SunSite]
All find from
The web-archive where is the last place to find really all files:
Additional you can still find IFC here: