Ta strona wykorzystuje pliki cookie w celu prezentacji dopasowanych dla Ciebie treści. Możesz włączyć/wyłączyć obsługę plików cookies w swojej przeglądarce.

Dowiedz się więcej
Czym się różni framework od bliblioteki? [INFOGRAFIKA]

Czym się różni framework od bliblioteki? [INFOGRAFIKA]

Opublikowano  przez Marek Zoellner

Ucząc się programowania nie powinno się chodzić na skróty, bo prędzej czy później pojawią się jakieś braki. Jeśli jednak czegoś nie wolno, ale bardzo się chce, to można. Stąd też wzięły się frameworki i biblioteki, czyli zestawy gotowych rozwiązań, z których coraz chętniej korzystają programiści.

Dziś nie będziemy jednak wymieniać i analizować poszczególnych technologii, ale w kilku słowach spróbujemy wyjaśnić, czym te dwa pojęcia się od siebie różnią. Zdarza się bowiem, że są one używane wymiennie, czasami niestety błędnie, co może prowadzić do pewnych nieporozumień. No więc jak to rozumieć?

4-miesięczny kurs Front-end: React

Zajrzyjmy na forum ulubionego przez tysiące programistów Stack Overflow. W jednej z dyskusji czytamy np. że biblioteka wykonuje ściśle określone, konkretne operacje, zaś “framework” to szkielet, a nawet mięso tychże operacji, co obrazowo wyjaśniamy także na grafice na dole artykułu. Ale jest też inny aspekt nazywany “zasadą Hollywood”, która brzmi:

Nie dzwoń do nas, my zadzwonimy do ciebie

Co oznacza, że to framework dzwoni do Ciebie, natomiast Ty dzwonisz do biblioteki. Ta zasada pokazuje kluczową różnicę między frameworkiem a biblioteką, zwaną “Inversion of Control”, gdzie wywołując metodę z biblioteki mamy kontrolę, sterujemy zachowaniem kodu. Kontrola odwraca się jednak w przypadku frameworka, bo to on wywołuje nas, czy raczej kod programu, który stworzyliśmy.

Można to wytłumaczyć w jeszcze inny sposób. Załóżmy, że chcemy otworzyć wirtualną knajpkę, w której serwujemy kawę i herbatę. Nie umiemy tego robić, ale zamiast uczyć się wszystkiego od zera, łącznie z temperaturą wrzenia wody, natężenia prądu w czajniku elektrycznym i szkodliwości cukru, zamiast kuchenki, czajnika, kranu z wodą, kupujemy nowoczesny ekspres, który część umiejętności bierze na siebie. Problem w tym, że mając framework Herbata, zrobimy tylko herbatę, a Kawa tylko kawę. Mamy jednak duży wpływ na te napoje, bo to nadal my decydujemy, czy będzie to np. woda filtrowana, a kawa najtańsza z dyskontu, czy może jednak ta lepsza.

Natomiast jeśli użyjemy biblioteki Knajpka, to ona zrobi nam każdy rodzaj napoju, nawet kawę zbożową i bawarkę. Będziemy jednak musieli sami wykonać każdą czynność, odmierzyć składniki, umieścić we właściwych pojemnikach, a na koniec jeszcze pozmywać :)

Zasadniczo jednak zarówno frameworki jak i biblioteki stworzone zostały po to, aby przyspieszyć i uprościć proces programowania. Których warto się uczyć? W tej materii dzieje się tak wiele, że nie ma jednej, prostej odpowiedzi na to pytanie. Kierując się ofertami pracy w IT na polskim rynku zobaczymy, że w najlepszej sytuacji są osoby znające Reacta lub Angulara, a także Vue.js i jQuery. Które z nich są bibliotekami, a które frameworkami? Sprawdź na naszej grafice:

A jeśli chcesz się uczyć programowania i wiesz już coś o opisywanych rozwiązaniach, zastanów się nad krótkim, ale bardzo dynamicznym, 4-miesięcznym kursem, podczas którego będziesz uczyć się Reacta. Podczas szkolenia poznasz SCSS, JavaScript i React oraz wykorzystasz wiedzę z HTML i CSS zdobytą już wcześniej (np. na kursach programowania).

Test predyspozycji dla branży IT

Umów się na rozmowę z doradcą Kodilli