Philipp Otte schrieb:
Also ich finde, dass C einen guten, wenngleich vielleicht auch etwas anspruchsvolleren Einstieg ermöglichen würde.
C ist zwar für systemnahe Programmierung unumgänglich, aber Anfänger direkt mit dem "Hochassembler" zu konfrontieren halte ich nicht für sinnvoll. Allein schon, dass es weder einen String-Typs noch ein Exception Handling hat, sind für mich schon zwei KO-Kriterien.
C++ ist natürlich dann schon wieder etwas anderes. Würde ich am Anfang erstmal lassen.
Nicht nur am Anfang. :-) C++ lernt man, wenn man es konkret braucht, immer noch früh genug - am besten nachdem man schon praktische Erfahrung mit Java und C gesammelt hat.
Aber ich verstehe nicht, warum hier von vielen Java empfohlen wird. Mein Gründe: - Es ist zwingend objektorientiert, was den Einstieg meiner Meinung nach nicht erleichtert
Sehe ich ganz anders. Es ist meiner Erfahrung nach einfacher, jemandem von Anfang an objektorientierte Arbeitsweise beizubringen und ihn erst später mal auch eine rein prozedurale Sprache lernen zu lassen als umgekehrt. Und beim allerersten Einstieg ("Hello World" usw.) merkt man von der Objektorientierung eh noch nichts, außer dass um die main-Deklaration noch eine class-Deklaration herumkommt. Das fällt für Anfänger in die gleiche Klasse wie der Standard-#include-Block bei C: "Das muss da halt immer hin. Warum, lernen wir später."
- Es C++ doch sehr ähnlich
Aber gerade für Anfänger wesentlich angenehmer im Umgang.
- Es ist finde ich zum Selbststudium nicht so geeignet. An den meisten FHs und Unis wird es gelehrt, wir mussten es selbst lernen und ich sehe die Probleme, die bei uns sehr viele damit hatten.
Du kanntest wahrscheinlich vorher schon eine andere Sprache.
- Es ist eben keine saubere Sprache [...]
Keine der "sauberen Sprachen" hat eine große Verbreitung. Ich bringe einem Anfänger lieber eine verbreitete Sprache bei, mit der er nachher auch arbeiten und ggf. bei jemand anderem Hilfe holen kann, als eine saubere, die sonst kein Schwein kennt. (Abgesehen davon kann man sich auch die Frage stellen, *warum* "saubere Sprachen" nie große Verbreitung erlangen, und ob der Grund dafür nicht vielleicht auch ein Argument dagegen ist, sie zur Ausbildung von Anfängern einzusetzen. ;-)
Wenn es darum geht, dass eine möglichst einfache, zeigerfreie Sprache genutzt werden soll, würde ich BASIC vorschlagen.
Bloß nicht. Die Unsitten, die man mit BASIC lernt, kann man sich nachher mühsam wieder abtrainieren, wenn man eine vernünftige Sprache beherrscht.
Bei Pascal will ich noch sagen, dass das schließlich auch in Schulen öfters gelehrt wird, weil es nun einmal schon eine gute Hochsprache ist, aber einfach auch noch nicht so "kompliziert", wie C, ist.
Pascal ist mit seiner einfachen Struktur und seinen eingebauten Erziehungsmaßnahmen als Ausbildungssprache konzipiert ist. Da ist es nur logisch, dass es auch gerne zur Ausbildung eingesetzt wird. Im produktiven Einsatz fängt man aber bald an, über die Beschränkungen zu stolpern. Abgesehen davon halte ich begin ... end einfach für schlechter lesbar als { ... }. (Ja, auch für Anfänger!) -- Tilman Schmidt t.schmidt@phoenixsoftware.de Phoenix Software GmbH Tel. +49 228 97199 0 Adolf-Hombitzer-Str. 12 Fax +49 228 97199 99 53227 Bonn, Germany http://www.phoenixsoftware.de