Wie können Sie den Unterschied zwischen SDK, Bibliothek, Paket und Modul erklären?


Antwort 1:

SDK: Software Development Kit

Laut Wikipedia

Ein Softwareentwicklungskit (SDK oder Devkit) besteht normalerweise aus einer Reihe von Softwareentwicklungstools, mit denen Anwendungen für ein bestimmtes Softwarepaket, Software-Framework, Hardwareplattform, Computersystem, Videospielkonsole, Betriebssystem oder eine ähnliche Entwicklungsplattform erstellt werden können.

In einfachen, nicht technischen Begriffen enthält SDK fast alles, was Sie während der Entwicklung benötigen. Kurz gesagt, ein riesiges Bündel.

Wenn Sie etwas Technischeres über SDK wünschen, enthält SDK:

  • API- und / oder Architekturdokumentation: Diese enthält normalerweise Informationen wie Klassen- und Methodendokumentation sowie Codebeispiele, um die Verwendung jeder Methode oder Klasse zu demonstrieren. Bibliotheksdateien Alle Binär- oder Quelldateien, die für Entwickler, die die Plattform verwenden, erforderlich oder hilfreich sind. Das Windows SDK enthält beispielsweise windows.h, die Hauptheaderdatei für die Win32-Entwicklung. Entwicklungstools und DienstprogrammeAnwendungen, die vom Plattformanbieter erstellt wurden, um Entwickler beim Erstellen von Anwendungen zu unterstützen. Dies können Compiler oder andere Tools wie Emulatoren und Debugger sein, mit denen Code geschrieben und getestet werden kann, sowie andere Anwendungen, die nicht unbedingt erforderlich, aber für die Softwareentwicklung nützlich sind. Beispielanwendungen Dies sind vollständige, normalerweise kleine Anwendungen, die von der Plattformanbieter, um einen bestimmten Aspekt der Plattform zu demonstrieren. Diese Anwendungen werden häufig mit Quellcode geliefert, damit der Entwickler besser verstehen kann, wie die Anwendung die Plattform verwendet.

Bibliothek

Wikipedia-Definition:

Eine Bibliothek ist eine Sammlung nichtflüchtiger Ressourcen, die von Computerprogrammen häufig zur Entwicklung von Software verwendet werden. Dies können Konfigurationsdaten, Dokumentation, Hilfedaten, Nachrichtenvorlagen, vorab geschriebener Code und Unterprogramme, Klassen, Werte oder Typspezifikationen sein.

Stellen Sie sich technisch gesehen eine reguläre öffentliche Bibliothek vor. Was enthält es? Bücher und einige andere Ressourcen für das Wissen, richtig? Buch verschiedener Sprachen und Genres. Die Softwarebibliothek ist ähnlich. Es enthält Ressourcen für die Entwicklung. Oft sind die Bibliotheken im SDK enthalten, aber es können auch neue Bibliotheken hinzugefügt werden.

In technischer Hinsicht enthält Library die Sammlung der genauen Syntax, des Tokens und der Semantik der Programmiersprache.

Paket

Oracle-Definition:

Ein Paket ist ein Namespace, der eine Reihe verwandter Klassen und Schnittstellen organisiert.

In nicht-technischen Begriffen ist das Paket ein winziges Paket, das eine bestimmte Funktionalität bietet. Konzeptionell können Sie sich Pakete so vorstellen, dass sie verschiedenen Ordnern auf Ihrem Computer ähnlich sind. Sie können HTML-Seiten in einem Ordner, Bilder in einem anderen und Skripte oder Anwendungen in einem anderen Ordner aufbewahren.

In technischer Hinsicht enthält es gemäß der Definition eine Reihe von Klassen und Schnittstellen.

Modul

Techopedia-Definition:

Ein Modul ist eine Softwarekomponente oder ein Teil eines Programms, das eine oder mehrere Routinen enthält. Ein oder mehrere unabhängig entwickelte Module bilden ein Programm. Eine Softwareanwendung auf Unternehmensebene kann mehrere verschiedene Module enthalten, und jedes Modul dient eindeutigen und separaten Geschäftsvorgängen.

Nehmen Sie in nicht-technischen Begriffen eine Fabrik an, die Lebensmittel herstellt. Jetzt ist die Fabrik aufgeteilt, um Arbeitsteilung und ordnungsgemäße Nutzung zu gewährleisten. Die Fabrik ist in kleine Abteilungen unterteilt, die als Herstellung, Verpackung, Qualitätssicherung, Finanzen, Marketing, Lieferung usw. bezeichnet werden. Sie können jede der Abteilungen als Modul betrachten.

In technischer Hinsicht ist das Modul Teil der gesamten Anwendung, um die Entwicklung des gesamten Programms zu vereinfachen. Durch das Zusammenführen bestimmter Module wird ein voll funktionsfähiges Programm erstellt.


Antwort 2:

Ich würde vorschlagen, die Antworten auf ähnliche Fragen zu lesen. Was ist der Unterschied zwischen Modulen, Bibliotheken, Paketen, Abhängigkeiten und APIs? und Was ist der Unterschied zwischen Framework, SDK, NDK, API und Bibliothek?

Oder wenn das bei Ihnen nicht funktioniert. Formulieren Sie Ihre Frage so, dass sie einen Kontext enthält. Welche Sprache und welches SDK sprechen Sie, um sich von generischen Definitionen zu lösen?

Im Moment ist es nicht möglich, Ishits Antwort zu erweitern - was in Ordnung ist.