Welche Sprache erlernen?



  • Eigendlich ist es für den Anfang egal ob man mit C/C++ oder Java anfängt. Programmiergrundlagen kann man mit beiden gut lernen. Wenn man erstmal programmieren kann ist ein Umstieg auf einen andere Sprache kein großer Schritt mehr ( meistens zumindest 🙂 ) Ich persönlich kann dir nur C/C++ ans Herz legen 😃



  • Hallo,

    Es sei angemerkt, dass ich bisher keine Programmiersprache beherrsche.

    Schau dir mal folgende Beiträge an:
    http://www.c-plusplus.net/forum/viewtopic.php?t=98907&start=0
    http://www.c-plusplus.net/forum/viewtopic.php?t=96899&start=0

    Meiner Meinung nach solltest du nicht mit C++ oder JAVA anfangen, weil:

    C++ ist eigentlich kein sehr toller Ausgangspunkt, da es eine sehr, sehr komplexe Sprache ist, und es lange dauern wird,
    bis du Erfolge (im Sinne von "so tolle Programme mit grafischer Oberflaeche") erzielen wirst.

    Ich rate dir zu Python: eine kleine aber feine Skriptsprache. Python ist schnell installiert,
    außerdem kannst du bereits in kürzester Zeit erste "Erfolge" verbuchen.

    http://www.python.org
    http://www.python-forum.de

    MfG



  • Beim Programmieren finde ich es unwahrscheinlich hilfreich, wenn ich in meiner unmittelbaren Nähe jemanden habe, den ich bei Schwierigkeiten fragen kann. So war es zum Beispiel bei mir, als ich mit Pascal angefangen habe.
    Lasse Dich also nicht von irgendwelchen technischen Aspekten o.ä. leiten, sondern von dem was Dir Spaß macht und in dem Du direkte Hilfe erwarten kannst.



  • Gude Leude,

    vielen Dank für Eure Antworten. Ich werde noch ein paar Nächte drüber schlafen und dann schauen mit welcher Sprache ich einsteige. Bei der Lektüre Eurer Antworten, fiel mir auf, dass eine Programmiersprache nicht in 5 min gelernt ist. Aber irgendwie läuft das schon.

    Gruß Knöpf



  • Also wie schon meine Vorredner gesagt haben ist diese Frage nicht wirklich beantwortbar.

    Ich würde dir aber C empfehlen. Da hat man eine solide Basis und kann damit sehr viel anstellen.
    Und wenn man mal C kann, und man umsteigen will, so fällt einen auf, das irgendwie jede Programmiersprache ähnlich ist. Egal ob Java, C++...sogar PHP hat Ähnlichkeiten mit C!!!
    Java finde ich anfangs zu "groß"(also umfangreich).
    Vor lauter Bäumen sieht man da den Wald nicht mehr.(hunderte verschiedene Klassen und Objekte...).

    C hat nur eine Handvoll von Schlüsselwörtern(wie z.B. if, else, for...) die man können muss, alles andere kann man sich damit zusammenbasteln.

    Hier 2 gute Beschreibungen für C Anfänger. Mit denen hab ich C recht gut erlernt:
    http://www.fh-augsburg.de/informatik/vorlesungen/c_cplus/tutorial/cyris/

    http://www.pronix.de/modules/C/openbook/

    Die Zauberformel heißt aber letztendlich: Üben, üben und nochmal üben. Eine Programmiersprache verursacht meist ein paar schlaflose Nächte...aber das hat doch auch irgendwie seinen Reiz 😃

    Grüße,
    Harri



  • Ganz klar C++, die einzige Sprache, die schlaflose Wochen erzeugt. Alles andere ist viel zu popelig. Nur C++ schafft den richtigen Thrill. Am besten gleich mit GUI, Multithreading, COM und massenweise Templates. Die Boost-Bibliothek nicht vergessen. 😃 😃 😃



  • Tanzfreak schrieb:

    Ich rate dir zu Python: eine kleine aber feine Skriptsprache. Python ist schnell installiert,
    außerdem kannst du bereits in kürzester Zeit erste "Erfolge" verbuchen.

    Leichte "Erfolge" kannst du auch mit C++ erzielen. Hängt alles davon ab, ob du dich zu Beginn mit "Hallo Welt!" auf der Konsole zufrieden gibst oder ob du gleich eine fette GUI Anwendung haben willst. Letztendlich sollte Knöpf sich darüber klar werden, was er denn irgendwann mal damit machen möchte. Dann kann man auch konkretere Tipps geben.



  • harry3 schrieb:

    Und wenn man mal C kann, und man umsteigen will, so fällt einen auf, das irgendwie jede Programmiersprache ähnlich ist. Egal ob Java, C++...sogar PHP hat Ähnlichkeiten mit C!!!

    Kann ich dann auch von C++ behaupten. Was man anfangs gern übersieht, ist, dass sich fast nur die Syntax ähnelt. Die optimalen Programmierweisen sind sehr unterschiedlich.

    C hat nur eine Handvoll von Schlüsselwörtern(wie z.B. if, else, for...) die man können muss, alles andere kann man sich damit zusammenbasteln.

    Ich hab mit so nem C/C++-Mix angefangen, ohne dass ich es wusste. IMHO versaut man sich den Stil mit C. Ich hab große Probleme, OO zu denken.



  • Michael E. schrieb:

    IMHO versaut man sich den Stil mit C.

    IMO hängt das aber von jedem Einzelnen ab. Es gibt sicherlich genauso Leute, die den Umstieg recht gut hinbekommen.



  • Man versaut sich mit allem ein bisschen den Stil. Als ich mal mit C arbeiten musste, hab ich krampfhaft alles versucht, in structs zu packen.
    Manchmal ist es aber anders einfach passender und weniger umständlich, zwei ints zu übergeben und nicht foo(&(struct Foo) {4, 28});. Man muss halt umdenken.



  • foo(&(struct Foo) {4, 28});
    

    an sowas hab ich ja noch nie gedacht 🤡



  • Optimizer schrieb:

    und nicht foo(&(struct Foo) {4, 28});

    Whoa, das sieht echt übel aus. Hätte gar nicht gedacht, dass sowas geht. 😃



  • Not macht erfinderisch. 🤡



  • Michael E. schrieb:

    IMHO versaut man sich den Stil mit C. Ich hab große Probleme, OO zu denken.

    umgekehrt aber auch. ein vollblut-java-coder kriegt kein vernünftiges c-programm hin.



  • @Michael E.:
    Wie schon gesagt ist das natürlich alles sehr abhängig von der einzelnen Person.(was man will sollte man wissen)
    Aber doch finde ich besser wenn man mal mit C anfängt, da muss man sich nicht gleich um Klassen etc. kümmern, was ja anfangs doch sehr verwirrend ist.

    Und "versauen" kann man wirklich nicht sagen. Es kommt immer drauf an was man will. Ich hab in letzter Zeit 2 Programme für meinen Ti200(großer Taschenrechner) geschrieben, und da muss man teilweise ziemlich hardwarenahe arbeiten. Hier ist es gut, wenn man C kann. Außerdem würde C++ hier nix bringen, weil C++ den Code aufbläht und langsamer macht. Zwar nicht auf PC's, aber sicherlich auf derart schwachen Rechnern.(wenns interessiert: LINK )

    Grüße,
    Harri



  • harry3 schrieb:

    Außerdem würde C++ hier nix bringen, weil C++ den Code aufbläht und langsamer macht. Zwar nicht auf PC's, aber sicherlich auf derart schwachen Rechnern.

    Quatsch! Der einzige Nachteil ist, dass auf solchen Plattformen die C++ Compiler noch nicht so gut optimieren, weil C dort eben verbreiteter ist. Ansonsten kannst du mit C++ Code gleich performanten Code schreiben.



  • Threadersteller: Wie du sehen kannst, solltest du dich entscheiden, ob du High-Level (Java, C++, C#) oder eher Low-Level (C) programmieren willst.



  • Walli schrieb:

    harry3 schrieb:

    Außerdem würde C++ hier nix bringen, weil C++ den Code aufbläht und langsamer macht. Zwar nicht auf PC's, aber sicherlich auf derart schwachen Rechnern.

    Quatsch! Der einzige Nachteil ist, dass auf solchen Plattformen die C++ Compiler noch nicht so gut optimieren, weil C dort eben verbreiteter ist. Ansonsten kannst du mit C++ Code gleich performanten Code schreiben.

    Das ist deine Meinung, jetzt wissen wir das du C++ Fan bist. Hast du ja sehr elegant rübergebracht wenn du gleich mal alles andere mit "Quatsch" bezeichnest.

    Lies dir doch mal das Gespräch durch, welches verlinkt ist.(s.o.).
    Und überleg dir dann nochmal, was du schreibst.

    Im Übrigen kann ich mich nur Michael anschließen: Du solltest zumindest ungefähr eine Vorstellung davon haben, was du machen willst. Denn eine Universalsprache für alles gibts halt nicht.

    Grüße,
    Harri



  • harry3 schrieb:

    Das ist deine Meinung

    Ne, ist ne Tatsache dass C++ von sich aus nicht langsamer als C ist.

    Das Problem ist nur, dass C++ Compiler wesentlich komplexer sind als C compiler und dass die C++ IOStreams nicht perfekt sind..

    Und genau das Problem der komplexen C++ Compiler macht C fuer solche Anwendungen sinnvoller, nicht die Sprachfeatures oder Abstraktionskosten.

    Lies dir doch mal das Gespräch durch, welches verlinkt ist.(s.o.).

    Habe ich ueberflogen (durchlesen habe ich nach den ersten paar posts nicht geschafft, weil soviel dummheit weh tut). Das einzige was C++ dort soweit ich sehe angekreidet wird, sind die IOStreams. Die sind wirklich verbesserungswuerdig, keine Frage - aber man wird ja nicht gezwungen sie zu verwenden...



  • Entwickle dein eigenes Betriebssystem und starte mit Assembler. Das ist das Einzige, was hier echten Respekt bringt! 😉


Anmelden zum Antworten