Seite 1 von 1

Frage zur MinGW-Compiler-Collection

Verfasst: Mi Dez 22, 2010 3:03 pm
von Die Webwurst
Hallo,
bin gerade dabei, einen der Rechner für meine ersten C-Versuche einzurichten. Dazu habe ich mir, wie von Euch empfohlen, die Code::Blocks-IDE mit der 'MinGW-Compiler Collection' (ich glaube, dass es beim Download so hiess) installiert.
Wenn ich jetzt, da am Anfang auf deutsch für mich verständlicher, mit PSPad oder 'NetBeans für C' entwickeln will, muss ich ja einen Compiler angeben.
Nun sind aber in dem Ordner 'MinGW' diverse .exe-Dateien, die für mich als NOOB & Programmier-Rookie nach Compiler aussehen (u.A. c++.exe). Gehe ich recht in der Annahme, dass in dieser Kollektion gcc.exe der C-Complier ist?
Danke im voraus für eine hilfreiche Antwort. :)

Gruß, Andreas

PS: Noch eine 2. (Grundsatz-)Frage: Ich glaube nicht, dass das Lernen oder Verstehen mein vorrangiges Problem ist, sondern die "Denke" eines Programmierers (a: problem, b: wie lösen, c: lösen). Gibt es dafür die 'richtigen' Seiten, die z.B. Schüler und Studenten ansteuern können (die müssen es ja auch irgendwo her haben) und eine 'gute Einstiegssprache'. Ich will keine Diskussion über Programmiersprachen beginnen, die gibt es zur Genüge. Ich will wissen, ob C genau so gut geeignet ist, wie PHP oder JavaScript oder Java (ich weiß, was Compiler- und was Interpreter-Sprachen sind ;) )

Re: Frage zur MinGW-Compiler-Collection

Verfasst: Mi Dez 22, 2010 3:16 pm
von Xin
Richtige Annahme. :-)

Re: Frage zur MinGW-Compiler-Collection

Verfasst: Mi Dez 22, 2010 3:36 pm
von Die Webwurst
Danke! :D

Du siehst, ich habe einer Antwort entgegengefiebert und gewartet.
Ich weiß, dass meine 2. Frage sich nach einem sog. 'Allgemeinplatz' anhört, ist aber für mich trotzdem wichtig. Könntest Du mir darauf auch schnell noch etwas antworten?
Mein Dank würde dir ewig nachschleichen (und dich auch einholen).

LG, die www (wartende Webwurst)*

* Manchmal denke ich, ich werde langsam grenzdebil :oops:

Re: Frage zur MinGW-Compiler-Collection

Verfasst: Mi Dez 22, 2010 3:49 pm
von Xin
Die Webwurst hat geschrieben:PS: Noch eine 2. (Grundsatz-)Frage: Ich glaube nicht, dass das Lernen oder Verstehen mein vorrangiges Problem ist, sondern die "Denke" eines Programmierers (a: problem, b: wie lösen, c: lösen). Gibt es dafür die 'richtigen' Seiten, die z.B. Schüler und Studenten ansteuern können (die müssen es ja auch irgendwo her haben) und eine 'gute Einstiegssprache'. Ich will keine Diskussion über Programmiersprachen beginnen, die gibt es zur Genüge. Ich will wissen, ob C genau so gut geeignet ist, wie PHP oder JavaScript oder Java (ich weiß, was Compiler- und was Interpreter-Sprachen sind ;) )
Im Prinzip sprichst Du da etwas wichtiges an, um nicht zu sagen "Das Wichtigste".

Die "Denke" eines Entwicklers ist eigentlich sehr einfach und je später man anfängt programmieren zu lernen, desto aufwendiger ist es, zu begreifen, dass man vieles an Lebenserfahrung einfach vergessen oder wenigstens ignorieren muss.

Computer arbeiten sehr einfach: Ja und Nein. Kein Vielleicht. Ein Vielleicht ist nur eine Ansammlung von mehreren Ja und Nein.
Computer finden keine Lösungen. Computer exekutieren Lösungen und zwar genau so, wie man es ihnen gesagt hat und ohne nach links und rechts zu gucken, weil ein Computer wirklich ein eindimensionales Wesen ist. Das Programm schreitet vorwärts und manchmal springt es zurück. Es gibt kein links, kein rechts, kein oben, kein unten. Es gibt einfach nur Befehle, die einer nach dem anderen ohne darüber nachzudenken abgearbeitet werden.
Und dieses einfache Prinzip - dass ein Computer ohne hinzusehen, ohne über irgendwelche Konsequenzen nachzudenken - einfach tut, was man ihm gesagt hat, das ergibt die Denke des Entwicklers: Der muss nämlich das in Gedanken nachverfolgen können und dabei alle Selbstverständlichkeiten abschalten, die er im normalen Leben gelernt hat - weil ein Computer darüber auch nicht nachdenkt.
Der Entwickler muss genauso stupide einfach Befehl für Befehl durchgehen und sich aber der Konsequenzen bewusst sein.
Wenn ich a durch b teile, dann muss ich mich fragen, ob b 0 sein könnte und deswegen eine Division vielleicht nicht funktioniert.
Der Entwickler muss alle Möglichkeiten im Kopf haben, für die er die Befehle schreibt und dafür sorgen, dass die Befehle in allen Fällen zu den gewünschten Ergebnissen führen.

Welche Sprache er verwendet ist dabei nebensächlich, darin formuliert er ja lediglich seine Gedanken für den Computer.

TODO: Diese Frage ins Wiki aufnehmen!

Re: Frage zur MinGW-Compiler-Collection

Verfasst: Mi Dez 22, 2010 3:59 pm
von Die Webwurst
Danke, werde versuchen, sehr vieles zu "vergessen" und mir, sofern möglich, wieder ein "2. Denken" anzugewöhnen.
Das wird garantiert nicht leicht, aber ich will es wenigstens ernsthaft und intensiv versucht haben, bevor ich resigniere und mich dann vielleicht doch auf die Couch setze, um "Lindenstraße" oder "Sportschau" zu gucken.....
...............
.....................
:? :shock:

Re: Frage zur MinGW-Compiler-Collection

Verfasst: Mi Dez 22, 2010 4:23 pm
von Xin
Die Webwurst hat geschrieben:Danke, werde versuchen, sehr vieles zu "vergessen" und mir, sofern möglich, wieder ein "2. Denken" anzugewöhnen.
Das wird garantiert nicht leicht, aber ich will es wenigstens ernsthaft und intensiv versucht haben, bevor ich resigniere und mich dann vielleicht doch auf die Couch setze, um "Lindenstraße" oder "Sportschau" zu gucken

Zu verstehen, dass der Weg so gradlinig ist, weil es eben nur diese eine Richtung gibt, ist das Problem.

Das geht aber letztlich allen so. In den Tutorien, die ich damals gab, war es für die Studenten eben das Problem zu akzeptieren, dass es wirklich und wahrhaftig so einfach war und es eben keine Einfluss von der Seite gab. Weder, dass irgendein Held von links kommt und Dein Programm rettet, aber eben auch dass Dir niemand von rechts Steine in den Weg wirft.
Es ist ein Computer, da ist einfach nichts außer ein Prozessor, der nichts anderes macht, als Befehl für Befehl abzuarbeiten, die wie an einem Fließband angeliefert werden. Man kann die Position auf dem Fließband beeinflussen - aber das war's auch schon.

Dein Job ist dafür zu sorgen, dass egal, was man an Daten reinbekommt, der Weg - also das Programm - keine Stolpersteine hat, wenn der Prozessor stur Befehl für Befehl abarbeitet.