Programmieren - alles kontrollieren 4.941 Themen, 20.715 Beiträge

Software entwicklung

Thomas166 / 3 Antworten / Baumansicht Nickles

Ja meine Frage ist, wie wurde Software wie wir sie heute kennen entwickelt? Angefangen hat es mit Schränken und ein paar Glühbirnen, dann schätze ich sowas wie Videotext mit Fernseher ähnlichem und dann Monitor mit richtigen Programiersprachen. Kennt jemand einen ausführlichen Entwicklungsweg?

bei Antwort benachrichtigen
Andreas42 Thomas166 „Software entwicklung“
Optionen

Hi!

Ich wiess nicht genau, was du suchst, aber etwas kann ich dazu auf jeden Fall beitragen. ;-)

Tipp: zur Geschichte der Programmierung sollte von Google&Co mit Fundsteller erschlagen werden.

Wenn wir die Art der Anzeige und Eingabe weglassen, dann war die grosse Entwicklung in etwa so, wie man auch heute Programmiersprachen für neue Rechnersysteme entwickeln würde.

- Man fängt mit der Sprache der CPU an (Maschinensprache).
- Am Anfang wird man von einem vorhandenen PC aus programmieren.
- Dann kommen textbassierte Umgebungen hinzu und man kann am neuen System selbst arbeiten.
- Dann erst kommen grafische Oberflächen ins Spiel.

Die Entwicklung der Rechnersoftware war damit vergleichbar.

Am Anfang gab' es in der Tat die "Schränke mit den Glühbirnen". Ich weiss nicht, ob an den ersten Rechenmosntern bereits Ferschreiber für die Ausgabe der Ergebnisse angeschlossen waren. Später war das warscheinlich der Fall, zumal Fernschreiber auch Lochstreifen lesen können und man die ja zur Programmeingabe genutzt hat.

Ich weiss nicht, wann der erste Monitor und die erste Tastatur ins Spiel kamen. Tatsache ist, dass das Spiel Pong (und Space War) noch fast aus dirkreten bauelementen zusammengelötet wurden - da war also noch kein echter Rechner eingebaut).

Die Lochstreifen wurden dann von Magnetbändern abgelöst (Festplatten gab's erst kurze Zeit später, sie kommen aus dem bereich der Messwerterfassung). Monitore und Tastaturen dürften sich mit der Entwicklung der Betriebssysteme für die ersten Grossrechner in privaten Umfeld (z.B. bei Banken) durchgesetzt haben.

Seit den 50er Jahren hat man sich dann auch in der Forschung intensiv mit der Programmierung befasst. Die ersten Computersprachen entstanden. Man arbeitete Zeilenorientiert, echte Editoren gab's damals noch nicht. Mit der Entwicklung von Unix dürfte dann die Sprache C ihre Bedeutung bekommen haben.

Ende der 60er Jahre wurde dann BASIC als Lernsprache entwickelt und seitdem hassen sich C- und BASIC-Programmierer.

In den 70er Jahren gab es einen Innovationssprung im Rechnerbereich, der durch eine einzelne Forschungeinrichtung angschoben wurde: das Palo Alto Research Center (PARC) von Xerox.

Ob man es nun glaubt oder nicht, hier wurden u.a. die Grundlagen des Ganzseiteneditors, der Maussteuerung, der 3D-Grafik, Postskript (Drucklayoutsteuerung), Laserdruckern und Ethernet geschaffen.

In der Programmentwicklung gab's IMHO danach nur noch Evolution: man setze die Entwicklungen um, die man im PARC geschaffen hatte. Die ganze Programmierung erfolge über Tastaturen (ohne Maus).

Eine "Neuheit" gab's dann doch und sie wird immer noch sher hoch gehandelt: die Objektorientierung. Soweit ich wiess, gibt's die Grundlagen schon länger, aber dass sollen andere wiederlegen. ;-)
ich meine in diesem Zusammenhang von Smaltalk gehört zu haben.

OK, das neue an der Objektorientierung ist, dass wir alles in unserer Umgebung als Objekt betrachten und uns dann dazu Methoden ausdenken, wie wir diese Objekte manipulieren können.

Das ist in der Tat neu, da wir bisher immer von Programmiersprachen ausgegangen sind und uns überlegt haben, wie wir Abläufe in Programme umsetzen können.

Letzendlich funktioniert der Computer aber auch nur mit Wasser (in Form von Bits), also betrachten wir alles als Objekt. Stellen Methoden dazu auf und überlegen uns dann, wie wir die nötigen Abläufe in den Methoden in Programme umsetzen.

Dass ganze hat eine Zeitlang nur Theoretiker beschäftigt, bis Softwareentwickler gemerkt haben, dass diese ganze Sichtweise durchaus praktisch ist: wenn man einmal ein Objekt mit seinen Methoden Programmiert hat, kann man es in einem anderen Programm weiter nutzen und dort verändern (man leitet ein neues Objekt von einem Vorhandenen ab).
Ok, dass man Programmteile neu benutzt ist nicht neu. Dafür hat der liebe Gott Unterroutinen und Funktionen geschaffen, aber die Objekte bieten weitere Möglichkeiten die Programmierung zu vereinfachen, indem sie Daten und dazugehörige Programme zusammenfasen und das ist WIRKLICH praktisch.

Zudem hat sich gezeigt, dass man grafische Oberflächen mit ihren ganzen Fenstern, Buttons und Schiebeleisten ganz hervorragend in Objekte packen kann, wodurch sich die Erzeugung von neuen Programmen mit Fenstern und allen Drumm&Drann wesendlich vereinfacht hat.
-> Die Objektorientierung ist heute der Stand der Dinge in der Programmentwicklung für Fesnterumgebungen auf Rechnern.

Nun findet die Programmierung in Entwicklungsumgebungen statt, die intensiv die Maus nutzen: man "malt" quasi die Oberfläche eines Programmes mit der Maus und programmiert im zweiten Schritt die notwendige Funktionalität hinzu.

Bis denn
Andreas

PS: Das ist meine Sichtweise der Dinge. Schreibt was dazu! ;-)

Hier steht was ueber mein altes Hard- und Softwaregedoens.
bei Antwort benachrichtigen
Borlander Andreas42 „Hi! Ich wiess nicht genau, was du suchst, aber etwas kann ich dazu auf jeden...“
Optionen

Da hast Du Dir aber ganz schön Arbeit gemacht...
Ist eine schöne Zusammenfassung geworden :-)

Gruß
Borlander

bei Antwort benachrichtigen
Thomas166 Nachtrag zu: „Software entwicklung“
Optionen

Danke, jetzt hab ich ein paar Ansatzpunkte zum suchen.

bei Antwort benachrichtigen