Welche Programmiersprache
-
Hi erstmal,
ich bin neu hier im Forum und auch neu und relativ unerfahren was das Thema Programmierung angeht. Ich hoffe ich bin mit meiner Frage im richtigen Bereich gelandet, falls nicht, entschuldige ich mich hier schonmal
Wie bereits erwähnt, hatte ich bis vor einigen Wochen, mit Programmierung nichts am Hut. Nun habe ich mich mit Hilfe eines Tutorials schon etwas in die Basics von C eingearbeitet. Meine Kenntnisse reduzieren sich Momentan noch auf Themen wie verschiedene Verzweigungen, Schleifen, Funktionen, Arrays und Strings, Strukturen usw. Das letzte Thema mit dem ich mich beschäftigt habe war die Netzwerkprogrammierung.
Nun habe ich erfahren, dass es neben C auch noch C++ und C# gibt und dass (Zumindest C und C#) doch recht unterschiedlich sind.
Meine Frage ist, welche Sprache ihr mir empfehlen würdet. Es geht mir vor allem darum, von was ich am meisten profitiere und ich habe nicht wirklich große Lust mich Komplett in C einzuarbeiten um danach zu erfahren, dass es kleverer gewesen wäre C# zu lernen und die eine Sprache nichts mit anderen zu tun hat.
Vielleicht könnt ihr mir auch kurz die Vor- und Nachteile der jeweiligen Sprache aufzeigen, das wäre Spitze.
Vielen Dank schonmal im voraus.
TK
-
Na ja, "Rund um die Programmierung" würde wohl besser passen als das C Forum, aber das wird ein Mod schon verschieben.
C, C++ und C# (und Java, Python, ...) sind zwar alle recht unterschiedlich, aber haben doch einige gemeinsame Grundideen. In C++ programmiert man zwar völlig anders als in C, aber dennoch muss man C nahezu vollständig beherrschen um C++ zu können. C ist an sich eigentlich eine sehr kleine Sprache, die fast keine Sprachfeatures hat. Aber eben die Grundlage für viele andere Sprachen. Variablen, Verzweigungen, Schleifen, Funktionen, Pointer, zusammengesetzte Datentypen (struct). Das waren schon so ziemlich alle großen Sprachfeatures von C, und die brauchst du auch in jeder anderen imperativen Sprache. Insofern kann man mit C eigentlich nicht besonders viel falsch machen. C++ vs C# ist dann schon eine andere Geschichte. Wie drückt man das jetzt richtig aus. Wenn du Jahre lang nur C++ gemacht hast, wirst du nicht mal eben so guten C# Code schreiben können und umgekehrt, einfach weil die Sprachen ein paar unterschiedliche Konzepte haben. Trotzdem bekommst du einen völlig andern Blick auf Sprachfeatures als "erfahrender" Programmierer und bist in der Lage diese auch viel schneller zu verstehen, sobald ein gewisses Basiswissen erreicht ist. Insofern ist die eine oder andere Sprache zu lernen eigentlich nie Zeitverschwendung. Denn die Probleme die versucht werden zu lösen sind fast die gleichen, nur die Lösungen sehen teilweise etwas anders aus. Aber wenn man die Probleme verstanden hat, sind die Lösungen eigentlich ganz einfach.
PS: Ich vote für C++ nach C.
PPS: Es gibt auch noch logische und funktionale Programmierung. Da bringt dir C schon etwas weniger. Aber wenn du dich eher für computernahes Programmieren interessierst, sind die eh nichts für dich.
PPPS: Das ist ein bisschen so wie zu fragen ob man erst Kraul-, oder erst Brustschwimmen lernen soll. Das mag am Anfang wie eine sinnvolle Entscheidung wirken, aber jeder der schon schwimmen kann, lacht über die Frage.
-
Vielen Dank für die wirklich ausführliche und gut verständliche Antwort!
Also so wie ich das sehe, macht es absolut Sinn sich vorerst weiter mit C zu beschäftigten, gerade weil ich eben ein Absoluter Anfänger auf dem Gebiet der Programmierung bin. Mein Hauptproblem ist, denke ich, vor allem, dass ich noch keine genauen Vorstellungen habe, was ich denn später genau machen möchte.Wenn der Zeitpunkt gekommen ist und ich alle Grundlagen beherrsche, kann ich mich also immer noch entscheiden, ob ich mich in Richtung C++ oder C# weiterentwickle, je nachdem, was für Ziele ich verfolge.
Vielen Dank für die schnelle und hilfreiche Antwort cooky451
Gruß,
TK
-
Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C (C89 und C99) in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Es macht keinen Sinn von einer Sprache zur anderen zu hopsen.
Festige deine Grundlagen in C, mach ein paar Projekte, dann kannst du ja weiter schauen...L. G.
Steffo
-
Ja eben, so sehe ich das auch.
-
ToKr schrieb:
Nun habe ich erfahren, dass es neben C auch noch C++ und C# gibt und dass (Zumindest C und C#) doch recht unterschiedlich sind.
Meine Frage ist, welche Sprache ihr mir empfehlen würdet. Es geht mir vor allem darum, von was ich am meisten profitiere und ich habe nicht wirklich große Lust mich Komplett in C einzuarbeiten um danach zu erfahren, dass es kleverer gewesen wäre C# zu lernen und die eine Sprache nichts mit anderen zu tun hat.
Eine wirkliche Empfehlung kann Dir mit den Informationen kaum einer geben, Du wirst hören, was die einzelnen Leute kennen und für sich entschieden haben.
So bin ich vermutlich hier bereits ausreichend dafür bekannt, dass ich mich sehr auf C++ fokussiere und den Leuten, die ernsthaft programmieren wollen auch C++ vor Java oder C# empfehle.
Wenn Du allerdings eine Empfehlung hören möchtest, die für Dich individuell zählt, müsstest Du uns mehr Informationen zur Verfügung stellen, weswegen Du programmieren lernen möchtest, bzw. welches Ziel Du verfolgst, so dass man Dich überhaupt konkreter beraten kann.Die Basics, die Du in C lernst, wirst du jedoch immer wieder gebrauchen können. Gute Kenntnisse in C sind ein solides Fundament, egal welchen Weg Du anschließend nimmst.
ToKr schrieb:
Vielleicht könnt ihr mir auch kurz die Vor- und Nachteile der jeweiligen Sprache aufzeigen, das wäre Spitze.
Regelmäßige Frage, regelmäßige Antwort:
-
Die Frage ist auch, was dir Spass macht und welche Sprache dich motivieren kann, überhaupt weiterzumachen. Meine erste Programmiersprache war Delphi und es hat mir damals Spass gemacht. Heute gefällt mir die Sprache nicht mehr. Aber damals fand ichs einfach interessant, dass ich schnell Erfolge hatte, schnell was zusammenklicken, was sehen konnte. Die trockene Programmierung hätte mich damals nie und nimmer interessiert. Hätt ich damals mit C angefangen, hätt ich wohl nach 1-2 Wochen aufgehört un die wieder dran gedacht, Programmierer zu werden.
Wenn dir C und das was du damit machen kannst, Spass macht. Bleib dabei. Ansonsten würd ich eher C# empfehlen. C++ würde ich Anfängern eher nicht empfehlen... Kann natürlich sein, dass du damit gut zurecht kommst, aber ich finde, die vielen technischen Aspekte die man beachten muss, schrecken Anfänger nur ab.
-
So werde ich es machen. Ich denke mit den C-Grundlagen, bin ich für die nächsten Wochen/Monaten ausreichend beschäftigt.
Wie bereits erwähnt, hab ich noch keine konkreten Vorstellung, was ich denn später genau programmieren möchte, aber vielleicht finde ich das nach und nach beim lernen heraus.
Ich arbeite zur Zeit in einer Social Media Agentur und ich denke es wäre nett, später einmal Programme schreiben zu können, die einem das Leben in gewissen Bereichen einfacher macht ohne hunderte von Euros für Lizenzen bezahlen zu müssen. Für einfachere aufgaben gibt es auch oft gar keine Programme, die genau das machen, was man gerne hätte. Außerdem wäre es ganz nett, mal eine eigene App schreiben zu können. Auch das, was ich bisher über Netzwerkprogrammierung erfahren habe, fand ich sehr interessant. Also wie man sieht, zum Teil wirklich ganz unterschiedliche Interessengebiete.
Aber als Fazit würde ich hier ziehen, dass es erst wirklich Sinn macht über C++,C#,etc weiter nachzudenken, wenn die Basics in C sitzen.
Nochmals vielen Dank an alle repeater für die nützlichen Infos und Links!
-
Für Smartphone Apps sind wohl eher Objective-C und Java angesagt, wobei, das neue Microsoft Ding ist wohl eher C++ orientiert.