Zum Inhalt springen

Programmiersprachen lernen - eine richtig oder viele verschiedene?


kurtchen

Empfohlene Beiträge

Mit meinem Java-Lehrbuch bin ich un schon ganz gut vorangekommen und allmählich habe ich das Gefühl, das mit der objektorientierten Programmierung endlich einmal im Prinzip begriffen zu haben. Nun frage ich mich, wie ich danach weitermachen möchte.

In verschiedenen Büchern und Artikel über das Programmieren-Lernen begegnen mir immer wieder zwei gegensätzliche Positionen:

1. Lerne erst mal eine Sprache vernünftig. Wenn du eine Sprache gescheit kannst, sind im Grund alle anderen Sprachen sehr ähnlich und lassen sich in kürzester Zeit lernen.

2. Lerne möglichst viele und möglichst verschiedene Sprachen, also am besten solche, die unterschiedlichen Paradigmen folgen. Lerne also z.B. auch eine funktionale Sprache wie Haskell, Lisp oder Clojure. Lerne eine logisch-deklarative Sprache wie Prolog. Lerne eine maschinennahe Sprache wie C. Das macht flexibel im Denken und bringt einem neue Einsichten, auch für die Sprachen, die man bislang zu kennen glaubte.

Ich rechne natürlich nicht mit einer abschließenden Klärung dieses Streits, wäre aber an den Meinungen der Forumsteilnehmer interessiert.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Anzeige: (wird für registrierte Benutzer ausgeblendet)

Hör auf die Erfahrung. Daher lerne ein Sprache richtig. Wenn du das kannst, kommst du später bei weiteren leichter durch. Programmieren aus Büchern lernen ist unsinn, denn da kommt es auf Erfahrung an. Bei anderen Methoden bleibt eher weniger hängen und der Stil ist nicht so praxisgerecht.

Empfehlen kann ich einen Kurs dieses Jahr für Python.

http://www.fernstudium-infos.de/informatik/32298-python.html

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ganz klar: 1.

Kannst du Java ist es ein Klacks zu C#, dann zu C++ oder gar noch C. Damit hat man >90% des Marktes gut abgedeckt. Wo zum Teufel wird Haskell oder Clojure eingesetzt, da hat Cobol mehr Verbreitung?!?

Es sei denn, du willst Unidozent werden;), schon an Fachhochschulen wird in der Masse nur der oben angeführte Standard gelehrt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Mir ist schon klar, dass Sprachen wie Clojure, Lisp, Haskell oder Prolog in der Praxis wenig eingesetzt werden. Das war aber auch nie das Argument derer, die es befürworten, ganz verschiedene Sprachen zu lernen. Die eigentliche Behauptung ist, dass man ein vertieftes Verständnis für Programmierung erwirbt, wenn man sehr unterschiedliche Sprachen kennt. Das einem also z.B. andere Lösungen einfallen, wie man ein Problem in Java lösen kann.

Link zu diesem Kommentar
Auf anderen Seiten teilen

SQL ist im Lehrplan ja vorgesehen, das kommt in jedem Fall dran. Da freue ich mich auch drauf, weil ich in den späten 80ern oder frühen 90ern mal dBase gelernt habe, und das hat mir damals echt viel Spaß gemacht.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das hängt vom Grad der Motivation, dem Talent sowie dem Lerntyp ab. Es gibt Personen, die lernen mehrere Programmiersprachen parallel und sind darin auch erfolgreich, wiederum andere werden dadruch eher in ihrem Lernfortschritt gehemmt. Ich persönlich habe mich immer mit mehreren Sprachen parallel befasst und versucht mir diese zu erschließen, aber ich habe festgestellt, dass dies den Lernertrag doch erheblich dezimiert, weil man dann unterschiedlich Fokussiert, dadurch vergisst man wieder bestimmte Inhalte, außerdem kann es zu Verwirrungen kommen, weil sich in vielen Fällen bsp. die Syntax oder das Paradigma stark unterscheiden.

Ich persönlich würde auch dazu raten erstmal eine Programmiersprache zu erlenen und mit dieser dann auch zu agieren, bis man sich wirklich im Umgang mit dieser Programmiersprache oder Technologie sicher fühlt. Wenn man dann mal eine Sprache wirklich gut kann fällt einem in der Folge, dass erlernen anderer Sprachen deutlich leichter, da man mit vielen Aspekten und Arbeitsweisen schon vertraut ist.

Viel Spass und Erfolg

Link zu diesem Kommentar
Auf anderen Seiten teilen

Mir ist schon klar, dass Sprachen wie Clojure, Lisp, Haskell oder Prolog in der Praxis wenig eingesetzt werden. Das war aber auch nie das Argument derer, die es befürworten, ganz verschiedene Sprachen zu lernen.

Es gibt ja bekanntlich zwei Dinge, für die Programmiersprachen verwendet werden:

1. Um funktionierende, produktive Programme zu schreiben.

2. Um über Programmierung und Programmiersprachen zu reden.

Die von Dir genannten Vertreter gehören eindeutig zur zweiten Fraktion. Überlege Dir, was DU mit deiner Programmiersprache machen willst.

(Natürlich kann es nicht schaden, wenn man weiss, dass es neben dem imperativ-objektorientierten Mainstream auch noch andere Ansätze und Paradigmen gibt. Aber das muss man ja auch nicht zu sehr vertiefen, schon gar nicht als Anfänger.)

Wenn Du jetzt schon die Grundlagen der Programmierung und der Objektorientierung verinnerlicht hast, dann solltest Du den Fokus jetzt vielleicht weniger auf andere Programmiersprachen setzen, sondern Dich um Dinge wie Algorithmen und Datenstrukturen, Entwurfsmuster und auch um die Grundlagen der Theoretischen Informatik (Automatentheorie etc.) kümmern. Das klingt zwar erst mal eher theoretisch, aber das Verständnis dieser Zusammenhänge ist der Schlüssel zum Verständnis der Konzepte, die in den gängigen Klassenbibliotheken eingesetzt werden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn Du jetzt schon die Grundlagen der Programmierung und der Objektorientierung verinnerlicht hast

Naja, das wäre nun ein bisschen viel behauptet.

dann solltest Du den Fokus jetzt vielleicht weniger auf andere Programmiersprachen setzen, sondern Dich um Dinge wie Algorithmen und Datenstrukturen, Entwurfsmuster und auch um die Grundlagen der Theoretischen Informatik (Automatentheorie etc.) kümmern.

Also z.B. erst mal gängige Algorithmen und Datenstrukturen am Beispiel EINER Sprache verstehen. Die Antworten gehen bislang in die gleiche Richtung. Ich bin gespannt, ob es noch Gegenstimmen gibt. Naja, ich schätze mal, falls ich ab September loslegen darf, hab ich eh nur noch wenig Zeit nach links und rechts zu schauen, weil ich zusehen muss, dass ich mein Pensum schaffe.

Link zu diesem Kommentar
Auf anderen Seiten teilen

@Kuddel

Bei Fremdsprache ist es ähnlich. Erstmal eine richtig lernen bis man da sehr gut ist und dann weitere. Innerhalb der Sparachfamilie (romanisch, slawisch usw) sind dann andere Sprachen leichter zu erlernen. So ist es bei Programmiersprachen auch. C und C++ haben einige Gemeinsamkeiten. Analog zu nicht genannten hier. Lernst du aber mehrere Programmiersprachen gleichzeitig, könnte es da im Quellcode Störungen geben.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.




×
  • Neu erstellen...