Базовые классы Интернета

Internet Foundation Classes (IFC) — это набор инструментов для создания графических виджетов и графическая библиотека для Java, изначально разработанная корпорацией Netcode и впервые выпущенная корпорацией Netscape 16 декабря 1996 года.

Java IFC был довольно близок к ранним версиям классов Objective-C NeXTStep для NeXT. В состав IFC также входил инструмент-конструктор, который был близок по духу (но существенно ограничен по функциональности) к Interface Builder от NeXT . Эта экосистема была привлекательна для разработчиков приложений NeXT, заинтересованных в изучении языка Java.

История

2 апреля 1997 года компании Sun Microsystems и Netscape объявили о своем намерении объединить IFC с другими технологиями для формирования Java Foundation Classes . [1]

В конечном итоге Sun объединила IFC с другими технологиями под названием «Swing», добавив возможность подключаемого внешнего вида и поведения виджетов.

Поскольку его технологии были объединены в Swing и Java 2D , IFC больше не поддерживается.

Отличия от Swing

Swing позаимствовал множество особенностей из IFC:

  • В отличие от AWT , IFC были написаны на чистой Java , поэтому (на тот момент) не зависели от браузера.
  • IFC уже предоставил два менеджера компоновки , которые позже будут включены в стандартный JDK
  • Некоторые компоненты IFC могли считывать HTML- контент из URL-адресов , но реализация все еще была далека от надежности.

Однако Swing также улучшил IFC во многих отношениях:

  • IFC не имела архитектуры Model-View
  • В отличие от Swing, внешний вид компонентов IFC был прописан в самих компонентах, что делало невозможным его легкое изменение.
  • Компоненты IFC не были JavaBeans . IFC имел определенный механизм сохранения, [2], но он был немного сложным и несовместимым с API сериализации Java .
  • Механизм событий был еще сырым [3] , и к циклу событий иногда требовался прямой доступ.

Примеры

Привет, мир

Это классическая программа Hello world в IFC:

импорт netscape.application.* ; импорт netscape.util.* ;  открытый класс HelloWorld расширяет приложение {      public void init () { super.init (); // Создаем текстовое поле TextField textField = new TextField ( 100 , 24 , 128 , 24 ); // Устанавливаем строку, которая будет отображаться в текстовом поле. textField.setStringValue ( " Hello World" ); // Добавляем текстовое поле в иерархию представлений. mainRootView (). addSubview ( textField ); }                   // Этот метод позволяет запустить HelloWorld как отдельное приложение. public static void main ( String args [] ) { HelloWorld app = new HelloWorld (); ExternalWindow mainWindow = new ExternalWindow ();                  app.setMainRootView ( mainWindow.rootView ( ) ) ; Размер size = mainWindow.windowSizeForContentSize ( 320 , 200 ) ; mainWindow.sizeTo ( size.width , size.height ) ; mainWindow.show ( ) ;         приложение . запустить (); } } 

Для сравнения с эквивалентным кодом Java Swing :

импорт javax.swing.* ; public class HelloWorld extends JFrame { public HelloWorld () { setDefaultCloseOperation ( DISPOSE_ON_CLOSE ); add ( new JLabel ( "Hello, World!" )); }             public static void main ( String [] args ) { HelloWorld app = new HelloWorld () ; app.pack ( ) ; app.setVisible ( true ) ; } }             

Ссылки

  1. ^ "Sun и Netscape совместно разрабатывают Java Foundation Classes". Netscape Communications Corporation . 1997-04-02. Архивировано из оригинала 2012-05-09 . Получено 2007-07-14 .
  2. ^ "IFC 1.1 руководство - Устойчивость". 2000-06-15. Архивировано из оригинала 2006-11-25 . Получено 2007-07-15 .
  3. ^ "Руководство IFC 1.1 - Цели и команды". 2000-06-15. Архивировано из оригинала 2006-11-25 . Получено 2007-07-15 .
  • Презентация МФК
  • Загрузка среды выполнения IFC Архивировано 19.05.2006 на Wayback Machine
  • Руководство по программированию IFC Архивировано 25.11.2006 на Wayback Machine
  • Иерархия классов IFC Архивировано 25.11.2006 на Wayback Machine
  • Учебник IFC Архивировано 25.11.2006 на Wayback Machine

Последние места, где можно скачать IFC:

Все найдено из

  • FileSearching.com

Веб-архив, где в конечном итоге можно найти действительно все файлы:

  • Веб-архив IFC-стороны

Дополнительную информацию об IFC вы можете найти здесь:

  • Сервер MIT - аккаунт Натана
  • Сервер MIT - часть материала
Взято с "https://en.wikipedia.org/w/index.php?title=Internet_Foundation_Classes&oldid=1154234530"