Frage von DonD0ny, 30

Welche Programmiersprache sollte ich am besten können ?

Derzeit bin ich noch Abiturient und in der Einführungsphase. Danach möchte ich gern Informatik studieren.

Um "gut vorbereitet" zu sein, möchte ich jetzt schon mal so das grundlegende der Programmiersprache (also so gut wie das Wichtigste) erlernen. Nur weiß ich nicht welche Sprache ich wählen sollte. :/

Die bekanntesten Sprachen sind ja Java, C und C++. Aber welche wäre am effektivsten bzw. vorteilhaftesten? Ich würde dazu auch noch gerne Dinge selbst programmieren. (Nur weiß ich noch nicht was, müsste dies auch noch erleben xD).

Ich freue mich auf eure Antworten!

Expertenantwort
von TeeTier, Community-Experte für programmieren, 17

Da du ja studieren möchtest und nicht bloß ein bisschen Hobby-Frickelei betreiben, würde ich zu C++ tendieren.

Arbeite das Buch "Der C++ Programmierer" durch, danach "Die C++ Programmiersprache" und danach den "C++ Primer". Dabei lernst du nebenbei auch C und die feinen Unterschiede zu C++ kennen.

(Vom Umfang der Bücher nicht abschrecken lassen! Die sind so dick, weil man damit auch etwas lernen soll und nicht als Alibi dienen, wie z. B. die "Dummy" Reihe!)

Dadurch, dass du ein Studium anstrebst, und deine Intention die Vorbereitung darauf ist, würde ich dir zu einer relativ Hardware-nahen Sprache wie eben C/C++ raten. Damit lernst du viel mehr über Speicher und dessen Verwaltung, als mit Java.

Aaaaaaber ... Java bietet eine sehr umfangreiche Standard-Bibliothek (viel viel umfangreicher als C++) und setzt teilweise auf völlig andere Konzepte, bzw. implementiert ein und das selbe auf eine ganz andere Art und Weise. (z. B. Iteratoren, Ein-/Ausgabe, ...)

Die beiden Bände des Buches "Java ist auch eine Insel" sind extrem empfehlenswert.

Bei Java lernst du auch sehr viele Entwurfsmuster kennen, da in den Packages von Javas JRE mehr und v. a. völlig andere vertreten sind, als in den Headern der STL von C++.

Ich würde deshalb sagen, dass du UNBEDINGT beide Sprachen lernen solltest: Sowohl C++ als auch Java, da sich deren Stärken und Schwächen (wenn man das überhaupt so nennen kann) sehr gut ergänzen / ausgleichen.

Mit C++ bekommst du ein technisches Verständnis, und du wirst dadurch erst so richtig verstehen, wie der GC von Java funktioniert. Auf der anderen Seite sind viele Dinge in Java wirklich außerordentlich elegant gelöst, die du auch mit nach C++ mitnehmen kannst.

Wenn du "nur" eine der beiden Sprachen lernst, garantiere ich dir, dass dir stellenweise viel Wissen fehlen wird. :)

--- Ab hier meine stark Meinungsbezogene Empfehlung ---

Wenn du diese Sprachen durch hast, lerne als nächstes Python, Ruby, Bash, JavaScript und C#.

Das klingt jetzt vielleicht übertrieben und du denkst dir "OMG, WTF!?!", aber die sollst du ja a) nicht auf einen Schlag, sondern nach und nach lernen, und b) wird dir dann kaum noch eine Problemstellung unterkommen, die du nicht schnell mit einem kleinen Skript / Programm lösen kannst.

Wenn du irgendwann mal damit durch bist, kannst du dich ja auch auf deine Lieblingssprache spezialisieren.

Um danach einen Blick über den Tellerrand zu werfen, guck dir danach auch ruhig noch mal Erlang, Scheme, ObjectPascal, Lua, Bash oder Haskell an.

Was du letztendlich lernst, bleibt dir überlassen, und meinen Empfehlungen werden viele Leute widersprechen. Aber das ist OK. :)

Es gibt nur eine Sache die ich dir wirklich ans Herz legen möchte: Lerne Java UND C++! Beachte dazu die Buchempfehlungen der beiden fett hervorgehobenen Absätze weiter oben.

Beide ergänzen sich einfach zu gut, um auf eine davon zu verzichten. Und beide sind sowohl im Studium als auch im Beruf sehr nützlich. Wenn du schon beide lernst, dann fang ruhig mit Java an, weil dabei die Lernkurve nicht ganz so steil ist, wie bei C++. Aber das bleibt dir überlassen. :)

Viel Erfolg! :)

PS: Wenn dir jemand sagt, dass Java und C++ fast das Gleiche sind, und sich nur in der Syntax unterscheiden, hör nicht weiter hin. Das ist Quatsch und wer so etwas behauptet, kann definitiv selbst nicht vernünftig programmieren!

Java und C++ verhalten sich wie Birke und Kaktus: Sind zwar beides irgendwie Pflanzen und beide leben von Sonne, Wasser, Luft und Liebe, aber niemand würde diese in einen Topf werfen! :)

Kommentar von procoder42 ,

Du bist dir schon im Klaren, dass man alleine mit deinen Empfehlungen zu C++ im best Case Szenario 2 bis 3 Jahre beschäftigt ist ?
Wenn man einen seichten Einstieg an der Uni will, dann macht Java wohl mehr sinn. Wird normal auch im ersten Semester an der Uni gelehrt (Und Programmieren I macht ordentlich was an Credits aus)

Antwort
von Krampe82, 28

Hallo, wenn Du Informatik studierst, dann wirst Du zu allen von Dir genannten Sprachen eine Vorlesung haben. Es genügt eigentlich eine Sprache richtig zu können. Hat man einmal wirklich gecheckt, wie man beim Programmieren vorgehen muss, ist das erleben von anderen Sprachen keine große Hürde mehr.

Überlege dir lieber, was Du später beruflich machen willst. Möchtest Du Informatik studieren und tatsächlich dann als Programmierer irgendwo tätig sein, dann kannst Du mal schauen, mit welcher Programmiersprache was überhaupt programmiert wird. Mit C/C++ und Java werden Anwendungen programmiert und mit HTML/CSS und PHP Webseiten erstellt. Es gibt noch mehr Sprachen. Alle haben jeweils ihre Vorteile und somit Einsatzgebiete. Also würde ich genau überlegen, in welche Richtung Du gehen möchtest. Was macht dir mehr Spaß?

Mir macht es zum Beispiel Webseiten zu programmieren. Anwendungen zu programmieren dagegen etwas weniger.

Viel Erfolg!

Antwort
von wotan38, 7

Die grundlegenden Fähigkeiten, die man für die Programmierung haben muss, sind im Prinzip bei allen Sprachen gleich. Die Syntax zu kennen ist im Vergleich dazu bescheiden. Am schwierigsten zu lernen ist deshalb immer die erste Programmiersprache, egal mit welcher man anfängt. Die weiteren Sprachen zu lernen werden jedesmal leichter.

Für Überlegungen zur ersten Programmiersprache sind praktische Aspekte zur Beschaffung einer Entwicklungsumgebung am Wichtigsten. Richtig gute und für professionelle Anwendung geeignete bekommt man nämlich nicht kostenlos. Als Einstieg zum Lernen und Üben sind dagegen die kostenlosen Angebote durchaus geeignet und auch sinnvoll. Zu einer brauchbaren Entwicklungsumgebung gehört eine gute Testmöglichkeit. Man findet damit nicht nur die Fehler schneller, man bekommt auch einen guten Einblick in den Ablauf. Besonders effektiv sind höhere Programmiersprachen, besonders dann, wenn man damit beruflich arbeitet und Geld verdienen muss. Aber auch da sind Kenntnisse der einfachen Sprachen sehr nützlich, weil gerade bei der Fehlersuche auch bei den höheren Sprachen einem das viel Verständnis vermittelt. Auch wenn man Manches nicht umständlich selber programmieren muss, ist es gut zu wissen, wie das der Compiler macht.

Mein Rat: Mach Dir keine allzu großen Sorgen um die Programmiersprache, schau Dich lieber nach guten kostenlosen Entwicklungsumgebungen und einer dazu passenden Hardware um. Die brauchst Du nämlich.

Antwort
von Kunzinger, 27

Java ... Wir haben im Kolleg mit Java angefangen und ich muss sagen, ohne Vorbereitung ist das eingeschlagen, wie eine Bombe... Man muss damit rechnen, dass Andere vielleicht schon Kenntnisse mitbringen und nach einer Zeit geht man unter....

D.h. ich würde mich mit den Grundbegriffen z.B. was ist eine Klasse, wie ist das Grundgerüst aufgebaut etc. schon vorher beschäftigen....

Antwort
von W00dp3ckr, 22

Gute Kandidaten sind Python (imperative Sprache, kleine Syntax, großer Effekt) und Scheme (funktionale Sprache, kleine Syntax, großer Effekt).

Bei Java und C++ hast Du relativ viel Verwaltung zu machen, relativ viele Zeilen Code pro Idee.

Kommentar von TeeTier ,

Das ist ja lustig. Ich sehe gerade, dass du - wie ich - Scheme erwähnst!

Leider ist diese Sprache für nicht allzu viel zu gebrauchen, außer mal ein paar neue Konzepte kennen zu lernen, kurze Skriptchen bzw. Plug-Ins zu basteln oder einen Klammer-Masochisten zum Höhepunkt zu bringen. :)

Antwort
von xxxcyberxxx, 29

bei uns (Uni Stuttgart) wurde in den ersten zwei Semestern hauptsächlich auf Java gesetzt.

Antwort
von happyfish2, 27

Wenn du Informatik studieren willst ist es ziemlich unsinnig, vorher auf Krampf eine Programmiersprache lernen zu wollen. Lern lieber etwas Mathe, das wird dir mehr helfen als Programmiersprache x.

Kommentar von safrano ,

find ich garnicht.

wenn man keine ahnung vom programmieren hat und dann im studium das alles auf einmal lernt, hat man keine zeit dass es sich "setzt"

jetzt schonmal anfangen mit den C basics also die standart funktionen und operationen usw. und dann ist es kein 100% neuland in der vorlesung.

das was der andere hier schreibt mit Java anfangen ist auch ok.

C ist halt näher an Assembler und dem Maschinencode, was vll in deinem Kopf das grudnverständniss schult

Kommentar von TeeTier ,

Mathe sollte man definitiv AUCH vorher lernen, aber Ich denke, man sollte sich GERADE vorher mit einer Programmiersprache beschäftigen, um dann nicht die Studienzeit mit solchen Lapalien verschwenden zu müssen, dann bleibt nämlich mehr Zeit sich um die Mathematik zu kümmern. :)

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten