Dzień dobry? Jestem Jayon.
Dzisiaj przyjrzymy się definicji i charakterystyce JCF.
Czym jest JCF?
JCF to skrót od Java Collections Framework, czyli zbioru klas oferujących standaryzowany sposób na łatwe i efektywne przetwarzanie wielu danych. Oznacza to, że struktury danych służące do przechowywania danych oraz algorytmy przetwarzające dane zostały ustrukturyzowane i zaimplementowane jako klasy. W tym kontekście "Collections" można rozumieć jako zbiór lub grupę danych.
Framework vs Biblioteka
Framework można określić jako "zbiór wzajemnie współpracujących klas i interfejsów, służący do rozwiązywania konkretnego problemu w oprogramowaniu". Nie jest to gotowa aplikacja, a raczej struktura, którą programista musi uzupełnić o własny kod. Z drugiej strony, biblioteka to po prostu zbiór gotowych do użycia narzędzi.
Różnicę między nimi można wyjaśnić następująco: framework kontroluje ogólny przepływ programu, a programista dodaje do niego potrzebny kod. Biblioteka natomiast jest wykorzystywana w ramach programu, którego ogólny przepływ jest definiowany przez programistę.
Tło wprowadzenia JCF
Przed wprowadzeniem JCF, standardowymi metodami grupowania (Collection) obiektów Java były tablice, wektory (Vectors) i tabele hashujące (Hashtables). Te kolekcje nie posiadały wspólnego interfejsu. W związku z tym, nawet jeśli ich przeznaczenie było takie samo, każda z nich musiała być definiowana osobno. Ponadto, każda kolekcja używała różnych metod, składni i konstruktorów, co prowadziło do łatwego pomyłek wśród programistów.
Jak widać w powyższym kodzie, pomimo tego, że celem jest dodanie i wyświetlenie elementów, składnia używana w każdym przypadku jest inna. Na przykład, dodawanie elementu do Vector odbywa się za pomocą addElement(), a do Hashtable za pomocą put().
W związku z tym, programiści Java opracowali wspólny interfejs, który rozwiązuje ten problem. Jest to właśnie Java Collections Framework, który przedstawiamy w tym artykule. Należy zauważyć, że wraz z pojawieniem się JCF, Vector i Hashtabls stały się klasami starszymi i obecnie nie są już używane.
Zalety JCF
(1) Ułatwia ponowne wykorzystanie kodu.
(2) Zapewnia wydajną implementację struktur danych i algorytmów, co przyczynia się do poprawy wydajności i jakości programu.
(3) Zapewnia interoperacyjność między różnymi, niezwiązanymi ze sobą interfejsami API.
(4) Skraca czas potrzebny na naukę i projektowanie nowych interfejsów API.
(5) Promuje ponowne wykorzystanie oprogramowania. Wynika to z faktu, że nowe struktury danych korzystające z JCF są ponownie używalne, a także z tego, że obiekty korzystające z JCF mogą być wykorzystane do tworzenia nowych algorytmów.
Podsumowanie
Do tej pory omówiliśmy znaczenie JCF, przyczyny jego wprowadzenia oraz jego zalety.
W następnym artykule przyjrzymy się strukturze hierarchicznej JCF.
Komentarze0