|
|
CAD-KAS GbR
|
|
|
Downloads
|
|
|
Informationen
|
|
|
Kunde werden
|
|
|
Andere Websites
|
|
|
Über uns
|
|
|
|
|
Wie entsteht ein Programm?
Am Anfang steht natürlich die Idee für ein neues Programm. Da das
fertige Programm ein konkretes Problem lösen soll, muss zunächst
untersucht werden, ob dieses Problem in der Praxis genügend Menschen
quält. Denn schließlich soll das Programm später auch verkauft werden.
Im zweiten Schritt werden alle nötigen Eigenschaften der Software
zusammengetragen. Es wird auch nach Produkten, die sich bereits auf dem
Markt befinden geforscht. Es liegt also eine Liste aller benötigten Funktionen
und aller nötigen Technologien vor. Nun muss geprüft werden, ob alle Informationen
die nötig sind bereits vorhanden sind, z.B. durch frühere Projekte. Sollte dies
nicht der Fall sein, muss zunächst nach den nötigen Informationen gesucht
werden. Dies sind in der Regel Spezifikationen oder Dokumentationen von
Software- und Hardware-Herstellern oder anderen Organisationen, die wichtige
Standarts entwurfen haben. Um in ein Programm einen Standart einzubauen,
z.B. die Unterstützung des PDF-Formates oder eines anderen Dateiformates, muss
erst die entsprechende Dokumentation her. Kann diese Informationen nicht gefunden
werden, dann kann das Projekt nicht umgesetzt werden. Oder ist der Aufwand zu groß,
müssen Lizenzgebühren entrichtet werden, um die Technologie zu nutzen (Software Patente),
dann kann das Projekt in dieser Phase noch ein Vorzeitiges Ende finden.
Nun werden Überlegungen angestellt, wie die benötigten Funktionen möglichst
logisch und übersichtlich angeordnet werden können, die Programmoberfläche entsteht.
Meist zunächst nur im Kopf. Es muss klar sein, wie der Benutzer das Programm später
bedienen soll, sonst kann erst gar nicht mit dem Programmieren angefangen werden.
Hier muss also ein konkretes Konzept her, wie der Benutzer sein Problem mit Hilfe des
Programms lösen können soll. Die eigentliche Grafische Oberfläche kann dann auch
nach und nach während der Programmierung entstehen, je nach Bedarf und Fortschritt des
Projekts entsteht meist zunächst das Hauptformular und später die einzelnen Dialogfenster.
Meist in der Reihenfolge, in der der Benutzer später auch mit dem Programm arbeiten
wird entstehen die einzelnen Teile der Programmoberfläche am Computer and werden meist
auch gleichzeitig mit Leben gefüllt, sprich es wird der nötige Programmcode geschrieben.
Den Programmcode kann man sich nun als Folge von Elementaren Anweisungen an den
Computer vorstellen. Eine Anweisung kann z.B. eine Mathematische Berechnung durchführen
oder irgendwelchen Datenstrukturen Werte zuweisen. Als Programmierer steht man
nun vor der Aufgabe, das Gesamtproblem Schrittweise in immer kleinere Teilprobleme aufzulösen. Z.B. Posterprogramm: Wird unterteilt in: Bild laden, Einstellungen entgegennehmen, Vorschau anzeigen, Bild drucken. Dann wird "Bild laden" wieder
unterteilt in: Dateiname entgegen nehmen, Dateityp ermitteln, Entsprechende Funktion
zum Öffnen dieses Dateitypen aufrufen. Dann wird die "Funktion zum Öffnen" wieder
unterteilt in: Prüfen, ob die Datei gültig ist, Informationen nach Dateiformat-Spezifikation lesen und Information im Programm-internen Format im Speicher ablegen. So wird dass Problem
also in immer kleinere Teilprobleme unterteilt, bis man irgendwann bei den Elementaren Befehlen
angekommen ist, die von der Programmiersprache bereitgestellt werden. Der "Compiler", also
das Programm in welches man das Programm eintippt unterteilt diese Befehle dann in noch
kleinere Probleme, welche dann direkt von der CPU des Computers verstanden werden können.
Und auch die CPU unterteilt die Probleme weiter, allerdings auf Hardware-Ebene, bis das Problem irgendwann auf die Funktionen der Logischen Gatter "Nicht" und "Oder" zurückgeführt wird.
Aus 0 mach 1, aus 1 mach 0 bzw. aus zwei Nullen mach 0, aus allem anderen mach 1.
Dies sind die 2 Logischen Operationen auf die der Prozessor letztendlich alles reduziert.
Aber es geht noch weiter, in den Gattern wird das Problem weiter aufgeteilt und von mehreren
Transistoren gelöst. Diese wiederum bestehen aus 3 Halbleiter-Schichten mit Störstellen.
Man nehme also Silizium, aus dem alle Steine zum großen Teil bestehen, baue Störstellen ein
und dann kommt so etwas phantastisches wie unsere heutigen Computer heraus! Um das Ganze
noch zum Ende zu führen: die Silizium-Kristalle bestehen natürlich aus Atomen, also
dem Atomkern mit Protonen und Neutronen und den Elektronen in der Atomhülle. Diese wiederrum
bestehen aus den Quarks. Also im Endeffekt doch nur alles Quark mit dem Programmieren?
Um zusammenzufassen: Ein Problem wird genommen und in immer kleinere Teilprobleme unterteilt,
bis die Programm zu Elementar sind, dass der Computer Sie alleine lösen kann. Aber bis zu diesem
Punkt muss der Mensch dem Computer auf die Sprünge helfen und dies ist die Aufgabe des Programmierers...
|
|
|