You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: community_guides/GUIDE_de.md
+12-12Lines changed: 12 additions & 12 deletions
Original file line number
Diff line number
Diff line change
@@ -30,53 +30,53 @@ Es ist jedoch möglich, dass Sie minderwertige Computer haben oder gar keine. In
30
30
31
31
## Was ist da drin
32
32
33
-
Das Archiv ist so gross - ungefähr 21 Billionen Bytes (siehe unten) -, weil es äußerst inklusiv und demokratisch ist. Viele Millionen Menschen stellen die Software, die sie schreiben, allen zur Verfügung. Dieses Archiv enthält einen Schnappschuss - dh eine einzelne Kopie zu einem bestimmten Zeitpunkt - aller öffentlichen Software, die die Benutzer von GitHub aktiv entwickeln. Dies bedeutet, dass es Millionen separater Repositorys enthält. Wir hoffen, dass dieser breite demokratische Ansatz für Historiker der Zukunft von Interesse sein wird.
33
+
Das Archiv ist so gross - ungefähr 21 Billionen Bytes (siehe unten) -, weil es äußerst inklusiv und demokratisch ist. Viele Millionen Menschen stellen die Software, die sie schreiben, allen zur Verfügung. Dieses Archiv enthält einen Schnappschuss - das heißt eine einzelne Kopie zu einem bestimmten Zeitpunkt - aller öffentlichen Software, die die Benutzer von GitHub aktiv entwickeln. Dies bedeutet, dass es Millionen separater Repositorys enthält. Wir hoffen, dass dieser breite demokratische Ansatz für Historiker der Zukunft von Interesse sein wird.
34
34
35
-
Die in diesem Archiv enthaltenen Repositorys wurden ausschließlich durch ihre letzte Festschreibungszeit, dh die letzte Aktualisierung, und ihre Anzahl der Sterne bestimmt. (Alle Benutzer von GitHub können öffentliche Repositories "markieren", um anzuzeigen, dass sie für sie von Interesse oder Bedeutung sind.) Der Snapshot wurde am 02.02.2020, dh am zweiten Tag des Monats Februar, im Jahr 2020 des Gregorianischen Kalenders, seit wir die Zeit zählen. Die darin enthaltenen Repositorys sind: alle Repositorys mit Commits innerhalb der letzten 80 Tage; alle Repositories mit mindestens einem Stern und Commits innerhalb der letzten 365 Tage; und alle Repositories mit mindestens 250 Sternen, unabhängig davon, wann sie zuletzt aktualisiert wurden.
35
+
Die in diesem Archiv enthaltenen Repositorys wurden ausschließlich durch ihre letzte Festschreibungszeit, das heißt die letzte Aktualisierung, und ihre Anzahl der Sterne bestimmt. (Alle Benutzer von GitHub können öffentliche Repositories "markieren", um anzuzeigen, dass sie für sie von Interesse oder Bedeutung sind.) Der Snapshot wurde am 02.02.2020, das heißt am zweiten Tag des Monats Februar, im Jahr 2020 des Gregorianischen Kalenders, seit wir die Zeit zählen. Die darin enthaltenen Repositorys sind: alle Repositorys mit Commits innerhalb der letzten 80 Tage; alle Repositories mit mindestens einem Stern und Commits innerhalb der letzten 365 Tage; und alle Repositories mit mindestens 250 Sternen, unabhängig davon, wann sie zuletzt aktualisiert wurden.
36
36
37
37
Natürlich sind nicht alle diese Repositories hinsichtlich ihres Einflusses und ihrer Abhängigkeiten gleich wichtig. Der Tech Tree enthält einen Index und eine kurze Beschreibung der wichtigsten Repositorys im Archiv sowie Listen, auf denen sich die einzelnen Repositorys befinden, sodass auf sie zugegriffen werden kann, ohne all diese Millionen von Repositorys durchsuchen zu müssen, um festzustellen, welche am praktischsten sind.
38
38
39
39
## Ein Überblick über das Archiv
40
40
41
41
Das Archiv besteht aus 188 Filmrollen: einer "Führungsrolle" mit lesbaren Informationen und Anleitungen, die wir Tech Tree nennen, und 187 Rollen archivierter Software. Jede Rolle enthält 65.000 Einzelbilder. Die Rahmen am Anfang jeder Rolle und die Rahmen der Führungsrolle enthalten für Menschen lesbaren Text und Bilder. Alle anderen Filmbilder bestehen aus digitalen Daten, die in einer visuellen Form gespeichert sind, die als QR-Codes bezeichnet wird.
42
42
43
-
Digitale Daten sind Daten, die letztendlich im Binärformat gespeichert sind, dh. als Nullen und Einsen, da die Computer selbst binär sind - gesteuert durch elektrische Signale, die entweder "Ein" oder "Aus" sind, entsprechend 1 oder 0 - und somit Binärdaten sind. Computer sind für Computer weitaus einfacher zu verstehen als alle anderen.
43
+
Digitale Daten sind Daten, die letztendlich im Binärformat gespeichert sind, das heißt als Nullen und Einsen, da die Computer selbst binär sind - gesteuert durch elektrische Signale, die entweder "Ein" oder "Aus" sind, entsprechend 1 oder 0 - und somit Binärdaten sind. Computer sind für Computer weitaus einfacher zu verstehen als alle anderen.
44
44
45
45
Die für Menschen lesbaren Metadaten, die zu Beginn jeder Rolle gespeichert sind, enthalten Informationen über den Film selbst, eine Anleitung zur verwendeten QR-Codierung, ein Softwareprogramm zum Decodieren und einen Index. Der Index listet den Titel, die Anfangsrahmennummer und die Prüfsumme für jede auf dieser Rolle gespeicherte Datei auf.
46
46
47
47
Eine Datei ist eine einzelne kohärente Dateneinheit. Eine Prüfsumme ist ein eindeutiger Wert aus einer Berechnung, die als Hash-Funktion bezeichnet wird und über den gesamten Inhalt einer Datei ausgeführt wird, um sicherzustellen, dass der Inhalt nicht beschädigt ist oder beschädigt wurde. Die im Archiv verwendete Hash-Funktion wird als 'SHA-1' bezeichnet.
48
48
49
-
Jeder QR-Code besteht aus einem Feld winziger weißer oder schwarzer Quadrate, die fast den gesamten Filmrahmen einnehmen. Wir verwenden QR-Codes, weil sie viel kompakter und robuster sind als lesbarer Text. Ein QR-Code decodiert in Binärdaten, dh. eine Reihe von Einsen und Nullen.
49
+
Jeder QR-Code besteht aus einem Feld winziger weißer oder schwarzer Quadrate, die fast den gesamten Filmrahmen einnehmen. Wir verwenden QR-Codes, weil sie viel kompakter und robuster sind als lesbarer Text. Ein QR-Code decodiert in Binärdaten, das heißt eine Reihe von Einsen und Nullen.
50
50
51
51
Diese Dekodierung ist nur der erste Schritt, um diese Binärdaten in aussagekräftige Informationen umzuwandeln. Es handelt sich um komprimierte Daten, was bedeutet, dass sie aus Platzgründen komprimiert wurden, ähnlich wie man "128xA" schreiben könnte, anstatt den Buchstaben A 128 Mal zu schreiben. Nach dem Dekodieren muss es dekomprimiert werden.
52
52
53
53
Das Ergebnis nach der Dekomprimierung wird als Archivdatei bezeichnet: Eine einzelne Datei, die den gesamten Inhalt des Repositorys eines einzelnen Softwareprojekts enthält. Die meisten Repositorys enthalten viele Dateien, daher ähnelt diese Archivdatei einem Buch, das viele separate Kapitel enthält, oder einer Box, die viele andere Boxen enthält. Es ist im Allgemeinen vorteilhaft, aber nicht unbedingt erforderlich, die Archivdatei vor dem Zugriff in ihre Komponentendateien zu entpacken.
54
54
55
-
Schließlich ist jede Komponentendatei ein eigener Satz von Binärdaten, dh. Einsen und Nullen. Man kann Daten verstehen, wenn man sein Format kennt. Beispielsweise werden in dem als 'UTF-8' bekannten Format, dem im Archiv am häufigsten verwendeten Format, die Einsen und Nullen in Achtergruppen unterteilt, die als Bytes bezeichnet werden. Das Byte 01000001 repräsentiert den Buchstaben A; die drei Bytes 01101001 01101110 01110100 repräsentieren das Wort int; und die zwei Bytes 11000011 10000011 repräsentieren den Buchstaben à (A mit einem Tilde-Akzent oben).
55
+
Schließlich ist jede Komponentendatei ein eigener Satz von Binärdaten, das heißt Einsen und Nullen. Man kann Daten verstehen, wenn man sein Format kennt. Beispielsweise werden in dem als 'UTF-8' bekannten Format, dem im Archiv am häufigsten verwendeten Format, die Einsen und Nullen in Achtergruppen unterteilt, die als Bytes bezeichnet werden. Das Byte 01000001 repräsentiert den Buchstaben A; die drei Bytes 01101001 01101110 01110100 repräsentieren das Wort int; und die zwei Bytes 11000011 10000011 repräsentieren den Buchstaben à (A mit einem Tilde-Akzent oben).
56
56
57
57
Dieser Datenarchivierungsprozess, bei dem Binärdateien in Archivdateien gepackt werden, die zuerst komprimiert und dann QR-codiert wurden, ist offensichtlich komplex im Vergleich zum einfachen Schreiben von lesbarem Text. Der nicht archivierende Prozess, den Sie durchlaufen müssen - QR zu komprimierter Binärdatei; komprimiert bis unkomprimiert; Datei in mehreren Dateien archivieren; Textdateien zu lesbarem Text - ist ähnlich komplex. Dies liegt daran, dass wir aufgrund dieser Komplexität wesentlich mehr Daten speichern können, als dies sonst möglich wäre, und zwar auf relativ leicht computerlesbare Weise.
58
58
59
-
Wenn diese Komplexität für Sie schwierig und kostspielig ist, entschuldigen wir uns, aber wir gehen davon aus, dass in diesem Fall dieser Leitfaden und der für Menschen lesbare Tech Tree diese Komplexität verringern und für Sie möglicherweise nützlicher sind als das Archiv Inhalte, zumindest bis Ihre Computer so weit fortgeschritten sind, dass die Komplexität der Archivdaten leicht zu bewältigen ist.
59
+
Wenn diese Komplexität für Sie schwierig und kostspielig ist, entschuldigen wir uns, aber wir gehen davon aus, dass in diesem Fall dieser Leitfaden und der für Menschen lesbare Tech Tree diese Komplexität verringern und für Sie möglicherweise nützlicher sind als das Archiv Inhalte, zumindest bis Ihre Computer soweit fortgeschritten sind, dass die Komplexität der Archivdaten leicht zu bewältigen ist.
60
60
61
61
## Dateien, Verzeichnisse, Repositorys und Datenformate
62
62
63
63
Es kann lehrreich sein, zu diskutieren, wie das Archiv logisch aufgeteilt ist. Insbesondere eine Diskussion von Dateien, Verzeichnissen und Datenformaten dürfte hilfreich sein.
64
64
65
65
Eine Datei ist eine Sammlung von Daten, die zu einer zusammenhängenden Einheit mit einem einzigen Namen zusammengefasst sind: Stellen Sie sich Daten als Sand und eine Datei als eine Art Beutel vor, der Sand und nur Sand aufnehmen kann. Ein Verzeichnis ist eine Sammlung von Dateien: Stellen Sie sich das als eine Art Tasche vor, die nur andere Taschen aufnehmen kann. Nach dieser Metapher besteht jedes Repository aus einem äußeren Verzeichnis, dem Stammverzeichnis, das eine Reihe von Dateien und / oder eine Reihe von Verzeichnissen enthält. Jedes Verzeichnis kann wiederum sowohl Dateien als auch Verzeichnisse selbst enthalten.
66
66
67
-
Diese Struktur wird bevorzugt, da in Gruppen organisierte Dateien viel einfacher zu bearbeiten sind als eine einzelne Dateisammlung. Die Kennung einer bestimmten Datei im äusseren Verzeichnis besteht aus den Namen aller umschließenden Verzeichnisse, beginnend mit dem Stammverzeichnis, gefolgt von einem eigenen Namen mit einem / -Zeichen zwischen jedem Namen. Beispielsweise würde eine Datei mit dem Namen README.md im Stammverzeichnis als /README.md und eine Datei mit dem Namen /public/www/index.html als Datei index.html im Verzeichnis 'www' im Verzeichnis 'identifiziert. Öffentliches Verzeichnis im Stammverzeichnis.
67
+
Diese Struktur wird bevorzugt, da in Gruppen organisierte Dateien viel einfacher zu bearbeiten sind als eine einzelne Dateisammlung. Die Kennung einer bestimmten Datei im äusseren Verzeichnis besteht aus den Namen aller umschließenden Verzeichnisse, beginnend mit dem Stammverzeichnis, gefolgt von einem eigenen Namen mit einem / -Zeichen zwischen jedem Namen. Beispielsweise würde eine Datei mit dem Namen README.md im Stammverzeichnis als /README.md und eine Datei mit dem Namen /public/www/index.html als Datei index.html im Verzeichnis 'www' im Verzeichnis 'public' des Stammverzeichnisses identifiziert.
68
68
69
69
Jedes Repository hat wiederum zwei Namen, die durch einen Teiler getrennt sind, der im Archiv ein _- oder Unterstrichzeichen ist. (In der Vergangenheit war es ein / oder Schrägstrich, aber das wird auch verwendet, um ein Verzeichnis anzugeben, daher verwenden wir aus Gründen der Übersichtlichkeit _.) Der Vorname ist das GitHub-Konto, dem dieses Repository gehört. Der zweite ist der Name des einzelnen Repositorys. Die Kombination aus Repository- und Dateikennungen kann verwendet werden, um eine einzelne Datei im Archiv eindeutig zu identifizieren. Beispielsweise könnte die Datei 'package.json' im Verzeichnis 'web' im Repository 'ykarma' im GitHub-Konto 'rezendi' in rezendi_ykarma im Archiv eindeutig als /web/package.json identifiziert werden.
70
70
71
-
Verschiedene Arten von Dateien haben unterschiedliche Zwecke. Das GitHub-Archiv besteht größtenteils aus Textdateien, dh Dateien, deren Daten die geschriebene Sprache darstellen sollen. Die meiste Software ist in Textdateien geschrieben, die stark strukturierten Text enthalten, der als Quellcode bezeichnet wird. Ein spezielles Programm, das als Compiler bekannt ist, konvertiert diesen für Menschen lesbaren Quellcode in computerlesbare Anweisungen, die als kompilierter Code oder Maschinencode bezeichnet werden.
71
+
Verschiedene Arten von Dateien haben unterschiedliche Zwecke. Das GitHub-Archiv besteht größtenteils aus Textdateien, das heißt Dateien, deren Daten die geschriebene Sprache darstellen sollen. Die meiste Software ist in Textdateien geschrieben, die stark strukturierten Text enthalten, der als Quellcode bezeichnet wird. Ein spezielles Programm, das als Compiler bekannt ist, konvertiert diesen für Menschen lesbaren Quellcode in computerlesbare Anweisungen, die als kompilierter Code oder Maschinencode bezeichnet werden.
72
72
73
73
Dateien, bei denen es sich nicht um Textdateien handelt, z. B. Dateien, die visuelle Bilder darstellen oder kompilierten Code enthalten, werden häufig als Binärdateien bezeichnet. Dies ist leider ein irreführender Begriff, da Textdateien letztendlich auch Einsen und Nullen sind. Wir werden Dateien, die keine Textdateien sind, als Nicht-Textdateien bezeichnen.
74
74
75
-
Es gibt viele Möglichkeiten, geschriebene menschliche Sprache mit Einsen und Nullen darzustellen. Aus historischen Gründen wurde der größte Teil des Quellcodes ursprünglich in lateinischer Schrift geschrieben. Die lateinische Schrift enthält 26 Grundzeichen, mit denen sprechbare Wörter dargestellt werden, von denen jedes zwei Formen hat: Groß- und Kleinbuchstaben. Es hat auch 10 Ziffern, um Zahlen darzustellen. Die lateinische Schrift wird zusammen mit verschiedenen anderen zugehörigen Symbolen, die zur Angabe der Struktur und anderer Konzepte verwendet werden, in einem als "ASCII" bekannten Format in Einsen und Nullen codiert, das 128 verschiedene Zeichen darstellen kann und aus historischen Gründen in den meisten Programmen viele Jahre lang vorherrschte.
75
+
Es gibt viele Möglichkeiten, geschriebene menschliche Sprache mit Einsen und Nullen darzustellen. Aus historischen Gründen wurde der größte Teil des Quellcodes ursprünglich in lateinischer Schrift geschrieben. Die lateinische Schrift enthält 26 Grundzeichen, mit denen sprechbare Wörter dargestellt werden, von denen jedes zwei Formen hat: Groß- und Kleinbuchstaben. Es hat auch 10 Ziffern, um Zahlen darzustellen. Die lateinische Schrift wird zusammen mit verschiedenen anderen zugehörigen Symbolen, die zur Angabe der Struktur und anderer Konzepte verwendet werden, in einem als "ASCII" bekannten Format in Einsen und Nullen codiert, das 128 verschiedene Zeichen darstellen kann und aus historischen Gründen in den meisten Programmen viele Jahre lang vorherrschte.
76
76
77
77
Die lateinische Schrift ist jedoch nur ein winziger Teil der vielen Arten, wie sich Menschen in schriftlicher Sprache ausdrücken. Um andere Skripte zu unterstützen und gleichzeitig zu ermöglichen, dass die gesamte geschriebene Software ASCII ohne Änderungen weiterarbeitet (ein Konzept, das als Abwärtskompatibilität bezeichnet wird), wurde ein anderes Datenformat namens "UTF-8" eingeführt.
78
78
79
-
ASCII bleibt das häufigste Format für Quellcode. Jede Rolle dieses Archivs enthält eine Anleitung zu ASCII-Zeichen. ASCII ist eine Teilmenge von UTF-8, dh alle ASCII-Codierungen sind ebenfalls UTF-8-Codierungen. Die Führungsrolle enthält zusätzlich eine Spezifikation aller UTF-8-Zeichen. Fast alle Textdateien in diesem Archiv sollten als UTF-8 codiert sein.
79
+
ASCII bleibt das häufigste Format für Quellcode. Jede Rolle dieses Archivs enthält eine Anleitung zu ASCII-Zeichen. ASCII ist eine Teilmenge von UTF-8, das heißt alle ASCII-Codierungen sind ebenfalls UTF-8-Codierungen. Die Führungsrolle enthält zusätzlich eine Spezifikation aller UTF-8-Zeichen. Fast alle Textdateien in diesem Archiv sollten als UTF-8 codiert sein.
80
80
81
81
## So extrahieren Sie den Inhalt des Archivs
82
82
@@ -188,7 +188,7 @@ Dieser Compiler konvertiert wiederum durch komplizierte Sequenzen, die im Tech T
188
188
189
189
_for (int i = 0; i <5; i ++) {}_
190
190
191
-
wird vom Compiler in eine Reihe von binären Anweisungen konvertiert, die dem Computer zugeführt werden, wodurch ein winziger Teil des Computers, der als Register bezeichnet wird, seinen Wert auf 0 setzt und diesen Wert anschließend auf 1, 2, 3 erhöht. und dann 4. (Dies ist nicht als Beispiel für nützlichen Code gedacht; es ist nur eine Illustration des vielschichtigen Prozesses, Quellcode in laufende Software umzuwandeln.)
191
+
wird vom Compiler in eine Reihe von binären Anweisungen konvertiert, die dem Computer zugeführt werden, wodurch ein winziger Teil des Computers, der als Register bezeichnet wird, seinen Wert auf 0 setzt und diesen Wert anschließend auf 1, 2, 3 und 4 erhöht. (Dies ist nicht als Beispiel für nützlichen Code gedacht; es ist nur eine Illustration des vielschichtigen Prozesses, Quellcode in laufende Software umzuwandeln.)
192
192
193
193
Andere Arten von Textdateien wie JSON, XML und HTML werden zum Speichern von Daten (im Gegensatz zu Befehlen) für Computer verwendet. Sie sind im Allgemeinen auch für Menschen lesbar, obwohl sie aufgrund ihrer strukturierten Formate schwerer zu lesen sind als weniger strukturierter Text zum Erzählen von Geschichten wie diese Datei.
194
194
@@ -224,7 +224,7 @@ Es gibt Hunderte verschiedener Programmiersprachen, die auf viele verschiedene F
224
224
225
225
* Java, das C # ähnelt (aber älter als C # ist), ist möglicherweise die heute am häufigsten verwendete Sprache.
226
226
227
-
* JavaScript ist im Gegensatz zu Java trotz der Ähnlichkeit des Namens und auch als "ECMAScript" bekannt eine Sprache, die ursprünglich vollständig in einem Webbrowser verwendet wurde, dh ein Programm, das Daten von einem als Internet bezeichneten Remotecomputer abruft, interpretiert und anzeigt Server; Heute ist es jedoch auch auf diesen Servern weit verbreitet.
227
+
* JavaScript ist im Gegensatz zu Java trotz der Ähnlichkeit des Namens und auch als "ECMAScript" bekannt eine Sprache, die ursprünglich vollständig in einem Webbrowser verwendet wurde, das heißt ein Programm, das Daten von einem als Internet bezeichneten Remotecomputer abruft, interpretiert und anzeigt Server; Heute ist es jedoch auch auf diesen Servern weit verbreitet.
228
228
229
229
* TypeScript, eine Form von JavaScript mit strengeren Regeln, damit Fehler, auch als Fehler bezeichnet, weniger wahrscheinlich in Programme gelangen.
0 commit comments