Różnica między framework vs Biblioteka vs IDE vs API vs SDK vs Toolkits? [zamknięte]

Chcę kilka przykładów. Zawsze się mylę, więc z pewnymi przykładami może uda mi się to lepiej rozgryźć.

Również: czy Eclipse jest API czy IDE?

Author: Xavier Casto, 2012-01-08

5 answers

An IDE to zintegrowane środowisko programistyczne-rozbudowany edytor tekstu z dodatkową obsługą tworzenia (np. projektantów formularzy, edytorów zasobów itp.), kompilowania i debugowania aplikacji. np. Eclipse, Visual Studio.

A Biblioteka to fragment kodu, który możesz wywołać z własnego kodu, aby pomóc ci robić rzeczy szybciej/łatwiej. Na przykład Biblioteka przetwarzania Bitmap zapewni udogodnienia Do ładowania i manipulowania obrazami bitmapowymi, oszczędzając musisz napisać cały ten kod dla siebie. Zazwyczaj biblioteka oferuje tylko jeden obszar funkcjonalności (przetwarzanie obrazów lub działanie na plikach zip)

An API (application programming interface) to termin oznaczający funkcje / metody w bibliotece, które można wywołać, aby poprosić ją o zrobienie rzeczy za Ciebie-interfejs do biblioteki.

An SDK (software development kit) to biblioteka lub grupa bibliotek (często z dodatkowymi aplikacjami narzędziowymi, plikami danych i przykładowymi Kod), które pomagają w opracowywaniu kodu używającego określonego systemu (np. kod rozszerzenia do korzystania z funkcji systemu operacyjnego (Windows SDK), rysowanie grafiki 3D za pomocą określonego systemu (DirectX SDK), pisanie dodatków do rozszerzenia innych aplikacji (Office SDK) lub pisanie kodu, aby urządzenie takie jak Arduino lub telefon komórkowy robiło to, co chcesz). SDK nadal będzie mieć zwykle jeden fokus.

A toolkit jest jak SDK - to grupa narzędzi (i często bibliotek kodu), które możesz użyć, aby ułatwić dostęp do urządzenia lub systemu... Chociaż być może bardziej skupiamy się na dostarczaniu narzędzi i aplikacji niż tylko na bibliotekach kodu.

A framework jest dużą biblioteką lub grupą bibliotek, która zapewnia wiele usług (a nie być może tylko jedną skoncentrowaną zdolność, jak robi to większość bibliotek/zestawów SDK). Na przykład. Net zapewnia framework aplikacji-ułatwia korzystanie z większości (jeśli nie wszystkich) różnych usług, których potrzebujesz (np., drukowanie, komunikacja itp.), aby napisać szeroką gamę aplikacji - więc jedna "biblioteka" zapewnia wsparcie dla prawie wszystkiego, co musisz zrobić. Często Framework dostarcza kompletną bazę, na której budujesz własny kod, a nie aplikację, która zużywa kod biblioteki do wykonywania części swojej pracy.

Istnieje oczywiście wiele przykładów, które nie pasują do tych opisów.

 257
Author: Jason Williams,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-21 18:35:20

Analogia Samochodu

Tutaj wpisz opis obrazka

IDE: MS Office programowania. To miejsce, w którym wpisujesz kod, a także kilka dodatkowych funkcji, które sprawią, że będziesz szczęśliwszym programistą. (np. Eclipse, Netbeans ). To jest to, co naprawdę dotykasz, widzisz i nad czym pracujesz.

Biblioteka: Biblioteka jest zbiorem funkcji, często pogrupowanych w wiele plików programu, ale spakowanych w jeden plik archiwum. Zawiera programy stworzone przez innych ludzi, dzięki czemu nie musisz odkrywać koła na nowo. (np. junit.jar, log4j.jar ). Biblioteka na ogół odgrywa kluczową rolę, ale wykonuje całą swoją pracę za kulisami, nie ma interfejsu graficznego. Silnik samochodu.

API: dokumentacja wydawcy biblioteki. Tak powinieneś korzystać z mojej biblioteki. (np. log4j API, junit API). Instrukcja obsługi samochodu-tak, samochody też są z jednym!


Zestawy

Co to jest zestaw? To jest zbiór wielu powiązanych elementów, które współpracują ze sobą, aby zapewnić określoną usługę. Kiedy ktoś mówi apteczka, dostajesz wszystko, czego potrzebujesz w nagłych wypadkach: plastry, aspirynę, gazę i środki antyseptyczne itp.

Tutaj wpisz opis obrazka

SDK: McDonald ' s Happy Meal . Masz wszystko, czego potrzebujesz (i nie potrzebujesz) starannie zapakowane: danie główne, napój, deser i dodatkową zabawkę. SDK to kilka różnych komponentów oprogramowania połączonych w pakiet, dzięki czemu są "gotowy do działania" po wyjęciu z pudełka. Często zawiera wiele bibliotek i Może, ale niekoniecznie może zawierać wtyczki, dokumentację API, nawet samo IDE. (np. iOS Development Kit ).

Toolkit : GUI. GUI. GUI. Kiedy usłyszysz "zestaw narzędzi" w kontekście programowania, często będzie on odnosił się do zestawu bibliotek przeznaczonych do tworzenia GUI. Ponieważ zestawy narzędzi są zorientowane na interfejs użytkownika, często są dostarczane z wtyczkami (lub samodzielnymi IDE), które zapewniają malowanie ekranu narzędzia. (np. GWT)

Framework: chociaż nie jest to powszechne pojęcie, Framework może być postrzegany jako zestaw. Posiada również bibliotekę (lub zbiór bibliotek, które współpracują ze sobą), która zapewnia określoną strukturę kodowania i wzór (a więc słowo, framework ). (np. Spring Framework)

 89
Author: Jops,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-04 00:20:59

Rozważ Rozwój Androida:

IDE: Eclipse itp..

Biblioteka: android.app.Activity library (Class with all code)

API: interfejs w zasadzie wszystkich funkcji z witch wywołujemy

SDK: Android SDK zapewnia biblioteki API i narzędzia programistyczne niezbędne do tworzenia, testowania i debugowania aplikacji na Androida (- - - - narzędzia-DDMS, Emulator - - - - Platformy-Wersje Android OS, - - - - narzędzia platform-ADB, - - - - API docs)

ToolKit: Could be ADT Bundle

Framework: duża biblioteka, ale bardziej zorientowana na architekturę

 5
Author: ashishpinninti,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-12 19:57:53

SDK reprezentuje software development kit, a IDE reprezentuje zintegrowane środowisko programistyczne. IDE to oprogramowanie lub program służy do pisania, kompilacji, uruchamiania i debugowania, takich jak Xcode. SDK jest podstawowym silnikiem IDE, zawiera wszystkie biblioteki platformy, do których aplikacja musi uzyskać dostęp. Jest bardziej prosty niż IDE, ponieważ zwykle nie ma narzędzi graficznych.

 2
Author: Haitham,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-09 16:33:14

Innymi słowy...

IDE Nawet twój notatnik jest IDE. Każde oprogramowanie, z którym piszesz/kompilujesz kod, jest IDE.

Biblioteka Zestaw kodu, który upraszcza funkcje/metody do szybkiego użycia.

API Interfejs programistyczny dla funkcji / konfiguracji, z którymi pracujesz, jego użycie jest często udokumentowane.

SDK Dodatki i / lub do celów rozwoju/testowania.

ToolKit Małe aplikacje do szybkiego użycia, często GUIs.

GUI Aplikacje z interfejsem graficznym, nie wymagają znajomości programowania w przeciwieństwie do API.

Framework Kilka API / ogromna biblioteka / urywki zawinięte w Przestrzeń nazw / lub zamknięte z zewnętrznego zakresu do kompaktowej obsługi bez konfliktów z innym kodem.

MVC Wzorzec projektowy rozdzielony w modelach, widokach i kontrolerach dla dużych aplikacji. Nie są one zależne od siebie i mogą być zmieniane/ulepszane / wymieniane bez dbania o innego kodu.

Przykład:

Samochód (Model)
obiekt, który jest przedstawione.
Przykład w nim: formularz HTML.


Kamera (Widok)
coś, co jest w stanie zobaczyć obiekt (samochód).
Przykład w nim: przeglądarka, która renderuje stronę internetową z formularzem.


Sterownik (Sterownik)
ktoś, kto prowadzi ten samochód.
Przykład w nim: funkcje obsługujące dane formularzy, które / align = "left" /

Snippets Małe kody składające się tylko z kilku linijek, mogą nie być nawet kompletne, ale warte szybkiego udostępnienia.

Wtyczki Funkcje wyłącznie dla określonych frameworków/interfejsów API / bibliotek.

Dodatki Dodatkowe moduły lub usługi dla określonych interfejsów GUI.

 2
Author: Thielicious,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-22 14:44:44