Biblioteka i środowisko
Wybór odpowiedniego narzędzia lub technologii dla danego problemu jest jednym z najważniejszych aspektów programowania. Właściwe narzędzie jest kluczem do sukcesu projektu. To tam kończy się większość programistów, ponieważ zazwyczaj mają do czynienia z wieloma narzędziami. Odnosi się to do ostatecznego pytania: "czy powinieneś zbudować swoją aplikację z biblioteką lub ramą?" Jest to jeden z najbardziej dyskusyjnych tematów dyskusji w społeczności programistów i często źródłem nieporozumień. Mały zespół z garstką programistów, głównie początkujących, może lepiej pracować z architekturą, podczas gdy biblioteki są blokami konstrukcyjnymi, które można wykorzystać wszędzie i pozwalają na większą elastyczność i kontrolę.
Podstawową różnicą między biblioteką a strukturą jest "Inversion of Control" (IoC). Można powiedzieć, że framework to zbiór bibliotek, ale cały pomysł jest inny.
Co to jest biblioteka?
Biblioteka to zbiór funkcji wielokrotnego użytku używanych przez programy komputerowe, które oznaczają zasoby, które można ponownie wykorzystać, w tym klasy, podprogramy, wstępnie skompilowany kod, szablony wiadomości itp. Większość języków programowania ma własne standardowe biblioteki, ale programiści mogą również tworzyć własne. niestandardowe biblioteki. Jest to po prostu fragment kodu napisany przez innych programistów, który może być ponownie użyty w dowolnym miejscu. Biblioteki można bezproblemowo włączyć do istniejących projektów w celu dodania funkcjonalności, do których można uzyskać dostęp za pomocą interfejsu API. Wymagana jest odrobina wiedzy, aby zacząć.
Co to jest framework?
Framework to fragment kodu, który określa, w jaki sposób projekt powinien być ustrukturyzowany i uruchamiany. Upraszcza on architekturę projektu, np. Definiuje parametry projektowe aplikacji, dzięki czemu można skupić się na specyfice projektu, podkreślając w ten sposób możliwość wielokrotnego wykorzystania projektu, a nie wielokrotnego wykorzystania kodu. W przeciwieństwie do bibliotek, sterowanie jest odwrócone w przypadku frameworku, a kod nigdy nie woła struktury, zamiast tego framework dzwoni do ciebie. W przeciwieństwie do bibliotek, frameworki kładą nacisk na strukturę i standardy.
Różnica między biblioteką a strukturą
W programowaniu biblioteka to zbiór funkcji wielokrotnego użytku - czyli zasobów, które można ponownie wykorzystać - używanych przez programy komputerowe. Zasoby, czasami nazywane modułami, są zazwyczaj przechowywane w formacie obiektowym. Większość języków programowania ma swoje własne standardowe biblioteki, ale programiści mogą również tworzyć własne niestandardowe biblioteki. Mówiąc najprościej, biblioteka to zestaw funkcji, które możesz wywołać, podczas gdy framework to fragment kodu, który dyktuje architekturę twojego projektu. W pewien sposób splecione są ramy i języki programowania, które razem pomagają w programach komputerowych.
"Odwrócenie kontroli" jest kluczową różnicą, która oddziela strukturę od biblioteki. Biblioteka jest zbiorem funkcji i procedur używanych przez inne programy i masz pełną kontrolę, jeśli wywołujesz metodę z biblioteki. Jednak kontrola jest odwrócona w przypadku szkieletu. Dyktuje strukturę twojego projektu, a kod nigdy nie woła do struktury, zamiast tego cię wzywa. Mówiąc prosto, możesz po prostu myśleć o bibliotece jako funkcji aplikacji i szkieletu jako szkieletu aplikacji, w której aplikacja definiuje własne funkcje.
Biblioteki to zestaw funkcji, które można wykorzystać w dowolnym miejscu, co oznacza, że jest to po prostu fragment kodu napisany przez innych programistów, który można ponownie wykorzystać. Są one łatwo integrowane z istniejącymi projektami w celu dodania funkcjonalności, do których można uzyskać dostęp za pomocą interfejsu API. Są one najczęściej używane do często używanych modułów, ponieważ nie trzeba ich jawnie łączyć z każdym programem, który ich używa. Są ważne w łączeniu programów i procesie wiązania. Z drugiej strony, ramy stanowią standardowy sposób budowania i wdrażania aplikacji i mogą być najczęściej wykorzystywane przy rozpoczynaniu nowego projektu, a nie w istniejących.
Aby lepiej zrozumieć różnicę między biblioteką a strukturą, przyjrzyjmy się jQuery i AngularJS. jQuery jest wieloplatformową biblioteką JavaScript, która upraszcza manipulację DOM, a także wiele innych skomplikowanych rzeczy, takich jak manipulowanie CSS, metody zdarzeń HTML, połączenia AJAX itp. Celem jQuery jest uproszczenie korzystania z JavaScript w Twojej witrynie. Z drugiej strony AngularJS jest strukturą strukturalną opartą na architekturze MVC używanej do tworzenia dynamicznych aplikacji internetowych. Jest całkowicie oparty na HTML i JavaScript, w przeciwieństwie do jQuery, nie można go zintegrować z istniejącymi projektami, ponieważ jako struktura określa, w jaki sposób ma być zbudowany i uruchamiany twój kod.
Library vs. Framework: Tabela porównawcza
Podsumowanie biblioteki a framework
Kiedy pojawia się dezorientacja, decydując, czy powinieneś używać biblioteki lub architektury do budowy aplikacji, wszystko sprowadza się do kontroli. Biblioteki to zestaw funkcji, które można wywołać, a każde wywołanie wykonuje pewne zadanie i zwraca je do Ciebie. Można je bez problemu zintegrować z istniejącymi projektami, a do ich rozpoczęcia wymagana jest niewielka wiedza. Z drugiej strony, ramy dyktują ogólną strukturę twojego projektu i, w przeciwieństwie do bibliotek, frameworki nazywają cię, a kod nigdy nie woła do struktury. Kluczową różnicą jest oczywiście Odwrócenie kontroli.Mówiąc prościej, biblioteki są bardziej elastyczne i mają większy stopień kontroli, podczas gdy ramy wymuszają strukturę i standardy.