2009-08-18 17 views
28

Ganz allgemein gesagt, für ein Noobie. Ich brauche anscheinend ein 'SDK', um etwas zu installieren; Was ist das?Was ist ein SDK? (C++)

+3

Der Begriff "SDK" wird manchmal austauschbar mit anderen Begriffen verwendet, die eine ähnliche, aber unterschiedliche Bedeutung haben. Beispiele sind ADF (Application Development Framework), API (Anwendungsprogrammierschnittstelle) und "Bibliothek". –

+30

Guys - Wenn ich das Ziel hinter SO verstehe, ist es die Quelle (zu der Google Links) für alle Programmierfragen. Wenn die Frage hier nicht gestellt wird, wie wird Google sie finden - und die Antwort. Denken Sie auch daran, dass "Keine Frage zu trivial oder zu" Neuling "ist", so die FAQ. – tvanfosson

+9

Ich bin mit @tvanfoson auf diesem.Wenn es sich um einen Betrogenen oder Spam handelt, oder nichts mit der Programmierung zu tun hat, oder so schlecht, dass es nicht lesbar und nicht löschbar ist, dann stimmen Sie es ab oder schließen Sie es. Ansonsten denk daran, dass du auch einmal ein kompletter Neuling warst. – paxdiablo

Antwort

28

Ein SDK ist ein Satz von Bibliotheken, die wiederverwendbaren Code enthalten, mit dem Sie wiederum Anwendungen entwickeln. Ob diese Anwendungen in Windows, auf einer XBOX und auf dem iPhone, in einer Flash-Anwendung usw. ausgeführt werden, hängt davon ab, welches SDK Sie verwenden sollten.

Nehmen Sie das iPhone zum Beispiel. Um eine iPhone-Anwendung zu schreiben, schreiben Sie Code in eine Sprache namens Objective-C (die wie C aussieht und sich anfühlt, aber mit Smalltalks Objektmodell). Wie auch immer, jedes Mal, wenn Sie eine App schreiben, müssen Sie den Code, der Text auf dem Bildschirm zeichnet oder den tatsächlichen Bildschirm berührt, nicht neu schreiben. Stattdessen stellt Apple den Code zur Verfügung, den alle Anwendungsentwickler benötigen, um einfache Dinge zu tun.

Ebenso, wenn Sie für Windows schreiben, gibt es Bibliotheken, um Dinge zu tun, wie zum Beispiel ein tatsächliches Fenster zeichnen oder eine Verbindung zum Netzwerk-Stack herstellen.

Alle diese allgemeinen Bibliotheken bilden zusammen mit einigen anderen Tools ein SDK.

Für C++ werden Sie wahrscheinlich eine Menge von Boost erwähnen. Dies ist kein SDK, sondern eine Sammlung von Bibliotheken, die Code enthalten, den viele andere Entwickler für nützlich halten.

Für welche Plattform möchten Sie schreiben? Kommen Sie gerade in C++ in Windows und suchen, um anzufangen? Versuchen Sie, ein Spiel für eine Konsole zu schreiben?

+2

Nur in C++ auf Windows, IDD. Ich mache nächstes Jahr Comp-Sci an der Uni, aber ich möchte mir einen Vorsprung verschaffen. – Xenoprimate

+0

Fair genug. Zu Beginn benötigen Sie einen C++ - Compiler, mit dem Sie Ihren Quellcode in etwas verwandeln können, mit dem der Computer arbeiten kann. Ich würde den ausgezeichneten GCC-Compiler (es ist kostenlos) empfehlen. Der Windows-Port heißt MinGW. Wenn Sie diese IDE verwenden: http://www.bloodshed.net/devcpp.html erhalten Sie eine Entwicklungsumgebung und einen Compiler kostenlos. Ich bin mir sicher, dass jemand einen Kommentar hinterlassen wird, der dir sagt, dass du Microsoft Visual * oder Eclipse verwenden sollst, aber wenn du gerade mit einer Sprache anfängst, fühle ich mich wie ein einfacherer Editor/Ide ist besser. Jetzt brauchen Sie nur noch ein gutes Buch oder eine gute Website. – Alex

+0

@Alex, Ich habe Ihre Antwort aufgewertet, da sie am besten erscheint (zu diesem Zeitpunkt sowieso). Aber alle Kommentare, die ich hier auf Bloodshed sehe, zeigen an, dass es sich nicht in der aktiven Entwicklung befindet und Code :: Blocks ist besser. Das ist natürlich Hörensagen, da ich keines benutzt habe. – paxdiablo

21

"Software Development Kit" - eine Reihe von Tools und Bibliotheken, mit denen Sie Software entwickeln können.

Ein Beispiel wäre das iPhone SDK, mit dem Sie Software für das iPhone entwickeln können.

3

Ein SDK für ein bestimmtes Produkt umfasst im Allgemeinen, was Sie benötigen, um eine Schnittstelle oder eine Anwendung basierend auf diesem Produkt zu erstellen. Deshalb "Software Development Kit", eine Reihe von Dingen benötigt, um Software zu bauen. Es ist seltsam, dass ein SDK für eine Installation erforderlich ist. Könnten Sie weitere Details angeben?

4

Ein SDK ist ein Toolkit, mit dem Sie Software für eine bestimmte Plattform entwickeln können.

Helfen Sie uns mit etwas Kontext! Möglicherweise können wir Ihnen nur das richtige SDK besorgen.

0

Das OP zeigt an, dass das SDK zur Installation der Software benötigt wird. Wenn dies der Fall ist, dann fragt das OP vielleicht "Warum wird ein SDK benötigt, um Software zu installieren, da ich keine Software entwickle (kompiliere)?"

Das OP markiert die Frage mit SDK, die eine Definition bietet und wenn das OP die Zeit nahm, die Frage zu schreiben, würde das OP in aller Wahrscheinlichkeit Google SDK sein.

Ich vermute, dies ist ein Fall, wo Moderatoren dem OP geholfen haben könnten, die Frage zu verfeinern.