Platforma aplikacji Swing

Swing Application Framework ( JSR 296) to specyfikacja Java dla prostej struktury aplikacji dla aplikacji Swing , z graficznym interfejsem użytkownika (GUI) w oprogramowaniu komputerowym . Definiuje infrastrukturę wspólną dla większości aplikacji komputerowych, ułatwiając tworzenie aplikacji Swing. Został on teraz wycofany.

Cechy

Specyfikacja JSR 296 definiuje podstawową strukturę aplikacji Swing. Definiuje framework jako mały zestaw rozszerzalnych klas, które definiują infrastrukturę wspólną dla większości aplikacji komputerowych :

  • zarządzanie cyklem życia aplikacji, uruchamianiem i zamykaniem;
  • obsługa ładowania zlokalizowanych zasobów;
  • trwały stan sesji;
  • wsparcie dla luźno powiązanych działań z ich prezentacją.

Stan i plan działania

Rozwój implementacji referencyjnej typu open source o nazwie „appframework” rozpoczął się w 2006 r. Pierwotnie oczekiwano, że ta implementacja umożliwi integrację JSR 296 z nadchodzącą wersją Java SE 7 (Dolphin) Java , a projekt został zaplanowany na być uwzględnione w 5. kamieniu milowym rozwoju pakietu Java Development Kit JDK7. Jednak w sierpniu 2009 roku ogłoszono, że projekt nie zostanie uwzględniony z powodu niemożności pogodzenia wad projektowych i osiągnięcia konsensusu między zespołem JSR 296 przed upływem terminu 5 kamienia milowego.

Oryginalna implementacja Swing Application Framework została wstrzymana na czas nieokreślony. Został później wycofany na prośbę Spec Leada w czerwcu 2011 roku. Ostatnią publiczną wersją projektu appframework była wersja 1.03.

Widelce i alternatywy

Kilka rozwidleń oryginalnej implementacji zostało uruchomionych przez społeczności open source, a kilka innych bibliotek frameworka aplikacji zostało stworzonych, aby osiągnąć cele podobne do tych z JSR 296.

Better Swing Application Framework
Projekt Better Swing Application Framework, w skrócie BSAF, jest rozwidleniem wersji 1.03 oryginalnego projektu appframework. BSAF powstał w Project Kenai we wrześniu 2009 roku i jest obecnie najbardziej aktywnym z forków. Jego celem jest eliminacja błędów i wprowadzanie drobnych poprawek projektowych w oryginalnej implementacji aplikacji, przy jednoczesnym zachowaniu zgodności z wersją 1.03.

Ostatnia wersja BSAF 1.9.1 pochodziła z 2012 roku. BSAF jest nadal dostępny na stronie SourceForge , która ma przycisk z napisem „Ten projekt można teraz znaleźć tutaj”, który prowadzi do nieistniejącego już projektu Kenai.

Zestaw narzędzi i narzędzi Guice
Zestaw narzędzi i narzędzi Guice, czyli GUTS, to implementacja JSR 296, która łączy platformę aplikacji z biblioteką Google Guice Dependency Injection. Podobnie jak BSAF, jest również hostowany w Project Kenai. W przeciwieństwie do BSAF, GUTS odrywa się od formacji „problematycznego singletona”. Ten projekt rozpoczął się w czerwcu 2009 roku i obecnie nie jest aktywny (wersja 0.1 utknęła w 2010 roku).
Swing Application Framework Fork
Swing Application Framework Fork, czyli SAFF, jest rozwidleniem appframework 1.03. Obecnie jest hostowany na GitHub . Jednak ten projekt był uśpiony od października 2009 roku.
TreasureMap
TreasureMap to biblioteka zapewniająca samodzielne użycie implementacji ResourceMap appframework 1.03.
Platforma NetBeans
Platforma NetBeans to solidna platforma aplikacji Swing , z wieloma dodatkowymi funkcjami, jak również znacznie większą ilością dokumentacji. Z powodu awarii/wstrzymania JSR SAF został usunięty z Netbeans od wersji 7.1. Deweloperzy wydają się nie chcieć dostarczać żadnej alternatywy i sugerują, że platforma Netbeans jest właściwym mechanizmem przenoszenia projektów SAF na obsługiwaną platformę.
Eclipse RCP
Eclipse RCP to duży SWT (alternatywa dla Swinga ) framework aplikacji, przy większych projektach, potrzebuje więcej czasu na zrozumienie.
jGAF - Java Generic Application Framework
jGAF to prosta i kompaktowa biblioteka do szybkiego tworzenia w pełni funkcjonalnych aplikacji Java Swing. Ta bezpłatna platforma typu open source zapewnia interfejsy API do obsługi cyklu życia aplikacji, menu, konfiguracji, integracji systemu operacyjnego, trwałości danych aplikacji, ochrony aplikacji, kreatorów, preferencji itp.

Zobacz też

Linki zewnętrzne