Heute kann jeder sein Lieblings-Texteditor rausholen und anfangen zu tippen. Was man genau eintippt, hängt ganz von der Programmiersprache ab, die man einsetzt. Das Bild oben zeigt Java. Jede Programmiersprache hat seine eigene Syntax. Das bedeutet, dass genau festgelegt wird wann wo und weshalb eine klammer, ein Semikolon oder eine Anweisung angeben wird.
Nachdem wir uns also an die Vorgaben gehalten haben, passiert nun das, was bei "allen Sprachen" gleich ist. Es wird durch einen sogenannten Compiler geworfen und Compiliert. Was passiert? Computer können nur mit 0 und 1 arbeiten. Wie das genau funktioniert will ich hier nicht ausweiten. Aber einfach gesagt, der Quelltext, der die spezielle Syntax hat die wir Menschen verstehen, wird in Maschinencode (also 0 und 1) gewandelt. So, dass der Computer es auch versteht.
Wenn ein Programm an User ausgeliefert wird, die Windows Menschen sprechen von *.exe-Dateien, passiert das in Maschinencode. Diesen können wir dann zwar auch anschauen, verstehen allerdings null. Denn nicht jedes "if" im Programmcode hat jedesmal dieselbe 01/10-Kombination. Da ist viel mehr dahinter. So, dass man wirklich nichts mehr vom Ursprünglichen Quelltext verstehen kann.
Warum mir das so gefällt? Keine Ahnung. Ich fühle mich dann nicht Sicherer vor Prism, vor Backdoors oder schlecht programmierten Code, den ich nicht einsehen kann. Ich habe einfach ein besseres Gefühl. Ich selbst habe auch noch nie ein Blick da rein geworfen. Auch als erfahrener Entwickler würde man auf die ersten Blicke kaum etwas verstehen. Aber allein der Gedanke "Ich könnte es", bringt mir ein Gefühl von Geborgenheit. Niemand hat "Macht" über mich. Niemand schreibt mir vor "nutzte es so, oder lass es". Ich habe die Wahl!
Vorteil an der ganzen Geschichte ist auch, dass sich jeder den Code schnappen kann und modifizieren. Er muss ihn dazu auch erst mal nicht verstehen. Man nimmt sich das komplette Konstrukt, jagt es durch den Compiler und es läuft genauso, wie es das vom Hersteller schon vor-Compilierte Programm tut. Jeder Entwickler kann nun irgendwo andocken und seine eigenen Erweiterungen einbringen. Regelmäßig, und nun kommt die Verknüpfung mit Android, passiert das bei den Custom Roms. Denn das Ursprüngliche Android ist Open Source.
Einen zweiten Teil werde ich noch veröffentlichen, in dem erkläre, was seit längerem unter Androids Open Source Projekt falsch läuft und wie es Linux besser macht...
Keine Kommentare:
Kommentar veröffentlichen