Welche Sprache lernen?



  • ;fricky schrieb:

    dann lieber Java. das ist noch ein kleines bisschen einfacher als microsofts Java-Klon C#

    Was ist eigentlich mit Microsofts Java-Klon J++ oder J#? Gibt's das noch? Hat das überhaupt jemals mal einer benutzt?



  • J# gibts glaub ich noch, aber benutzt hat das noch nie jemand 😃
    @OP: ist zwar jetzt off topic aber wieso willst du überhaupt einen installer, programme mit installer sind sogut wie immer zum wegschmeißen 😡 😡 😡
    ich raste jedesmal aus wenn irgendein scheißprogramm meint einen installer brauchen zu müssen 😡 😡 😡



  • Wieso kommt ihr mit so einer Gülle wie Basic, Freebasic oder C? Gegen Java oder Python sag ich nicht Mal was, wobei Python eine gute Sprache ist und das auch noch für Anfänger. C# ist momentan für mich die beste Sprache, für einen Anfänger jedoch viel zu kompliziert mit der reinen OOP. Nacher kommt noch sowas wie "Wenn du Basic durch hast, kannste auf Delphi umsteigen, da ist die Syntax gleich".
    Ich habs so gemacht, dass ich mit C++ angefangen hatte und als ich OOP einigermaßen drauf hatte, bin ich zu C#. C++ dient als guter Einstieg zur OOP meiner Meinung nach.
    Demnach, fang mit Pyhton, C++ oder gleich mit C# an.



  • u-ser_l schrieb:

    da gibt's übrigens noch so 'ne Sprache, komm' jetzt grad' nicht auf den Namen, fängt mit C an und danach zwei Sonderzeichen ... 🙂

    linefeed und carriage return?



  • Tim schrieb:

    u-ser_l schrieb:

    da gibt's übrigens noch so 'ne Sprache, komm' jetzt grad' nicht auf den Namen, fängt mit C an und danach zwei Sonderzeichen ... 🙂

    linefeed und carriage return?

    😃 👍



  • > C++ dient als guter Einstieg zur OOP meiner Meinung nach.

    Fail. Ich finde, obwohl C++ keine OO-Sprache ist, besitzt sie die beste OO, die es gibt. Der rohe Attribut-Zugriff in .NET ist ja ein Graus. 😉



  • anfängerpeter schrieb:

    programme mit installer sind sogut wie immer zum wegschmeißen 😡 😡 😡

    ich finde auch, Betriebssysteme sollten wieder im ROM ausgeliefert werden, das würde auch die Motivation zu fehlerfreiem und schlankem Code erhöhen 😃



  • _matze schrieb:

    Was ist eigentlich mit Microsofts Java-Klon J++ oder J#? Gibt's das noch? Hat das überhaupt jemals mal einer benutzt?

    nö, das waren m$'s erste selbstfindungsversuche im krieg gegen sun und noch bevor sie diesen borland-starentwickler abgeworben haben.

    anfängerpeter schrieb:

    ich raste jedesmal aus wenn irgendein scheißprogramm meint einen installer brauchen zu müssen

    ja, ne. irgendwelche mini-tools z.b. sowas finde ich auch total albern.

    FreakY<3Cpp schrieb:

    Wieso kommt ihr mit so einer Gülle wie Basic, Freebasic oder C?

    weil BASIC total einfach für anfänger ist, C z.b. nicht, das finde ich zu abstrakt für einen, der noch nie was programmiert hat.

    FreakY<3Cpp schrieb:

    C++ dient als guter Einstieg zur OOP meiner Meinung nach.

    eigenlich kann jede andere sprache, die sich OOP auf die fahnen geschrieben hat, OO besser als C++, meiner meinung nach.
    🙂



  • Du willst also Anfängern eine Sprache in die Hand drücken, die total alt ist und sie somit einen widerlichen Stil annehmen? Wieso sollen sie nicht gleich die Sprachen der Zukunft sich aneignen. Ich hab auch mit C++ angefangen und mit einem guten Tutorial (die besten sind eigentlich immer englisch), geht das sehr gut. Anfangs hatte ich nicht mal ein Buch, aber als ich dann zum OO Part kam, hab ich das weiter im Buch gelernt, damit ich es gleich verstehe und nicht ein wirres Zeug lerne.

    FOR i = 33 TO 255
       PRINT i; CHR$(i)
    NEXT i
    

    Mmmmhh... Der Code sieht richtig schmackhaft aus...

    Entweder man lernt es gleich richtig, oder man tut sich vorher Basic an. Was lernt man dadurch? Mit Print Texte schreiben und eine Funktion aufzurufen. Die ersten 2-3 Lektionen von C++. Sorry, aber ich finde das ist sinnlos verschwendete Zeit.



  • Kommt drauf an.

    Ist man eher der Experimentiertyp, möchte die volle Kontrolle in die Hand nehmen und steht auf mächtige Sprachmittel, ist C++ super. Da lernt man auch interessante Konzepte jenseits von Mainstream-OOP kennen. Voraussetzung ist die nötige Ausdauer und Motivation, denn C++ ist keine besonders anfängerfreundliche Sprache. Dafür gibt sie einem recht viel Freiheit.

    Will man hingegen einfach programmieren und vor allem schnell zu einem Ergebnis (z.B. GUI) kommen, empfehlen sich Java und C#. In diesem Fall trifft das wohl eher zu. Beschränkt man sich auf Windows, ist .NET und C# wohl die bessere Wahl, braucht man hingegen Portabilität oder bewegt sich in Richtung Web-Entwicklung, kann man Java nehmen.



  • Dass in einem C++-Forum tatsächlich Basic als Anfängersprache empfohlen wird, reißt mich vom Hocker.
    Basic verdirbt den Programmierstil auf Lebenszeit. Ich frage mich, ob ihr den Threadersteller als Anfänger oder als Idioten seht. 🙄
    Lern C++. Bis du zur Objektorientierten Programmierung kommst, hast du ein verbessertes C gelernt. Und das tolle an C++ ist, dass man die OO einsetzen kann, aber nicht muß.
    Und was daran sooo schwierig sein soll, dass engagierte Anfänger es nicht schaffen könnten, ist mir nicht einsichtig.



  • C 64er schrieb:

    Dass in einem C++-Forum tatsächlich Basic als Anfängersprache empfohlen wird, reißt mich vom Hocker.
    Basic verdirbt den Programmierstil auf Lebenszeit.

    Nö, das ist Blödsinn. Ich habe als Kind auch mit AmigaBASIC angefangen und (nachdem zwischendurch andere Sprachen dran waren) meine ersten Windows-Programme in VB geschrieben. Ich sage mal so: wer sich nicht umgewöhnen kann, ist vielleicht nicht gerade der beste Programmierer. 😉



  • EIn etwas älterer Basic-Dialekt ist die beste Anfängersprache, gerade WEIL man da schlechten Stil üben kann, ohne ihn später in die nächaste Sprache mitzunehmen.



  • FreakY<3Cpp schrieb:

    FOR i = 33 TO 255
       PRINT i; CHR$(i)
    NEXT i
    

    Mmmmhh... Der Code sieht richtig schmackhaft aus...

    ja, wenn man etwas englisch kann, ist für jeden sofort ersichtlich (ausser vielleicht das 'chr$'), was das machen soll. auch wenn er noch nie im leben programmcode gesehen hat. bei 'nem ähnlichen c++ schnipsel:

    for (int s=33; s<256; s++)       // keine 255, warum 'int', wieso klammern, warum ein kleiner-zeichen, was soll ++, was sollen die semikolons, wtf?
      cout << s << reinterpret_cast<char>(s) << endl;  // spätestens hier wird sich der anfänger 'nen wolf raten. noch nichtmal sowas wie 'print' ist zu sehen. die absolut üble cast-schreibweise macht die verwirrung komplett
    // ^^ ein anfänger würde sowas noch nicht mal als schleife interpretieren
    

    ...versteht der anfänger erstmal garnichts, ohne bis seite 10 seines tutorials gekommen zu sein.
    ihr macht den fehler und seht es aus eurer perspektive. ihr könnt schon programmieren.
    🙂



  • ;fricky schrieb:

    ...versteht der anfänger erstmal garnichts, ohne bis seite 10 seines tutorials gekommen zu sein.
    ihr macht den fehler und seht es aus eurer perspektive. ihr könnt schon programmieren.
    🙂

    Deswegen Python:

    a = ['cat', 'window', 'defenestrate']
    for x in a:
        print x, len(x)
    

    Einfache, saubere Syntax, der man sofort ansieht was sie macht ohne viel wissen zu muessen. Und mit PyQt kann man auch seine GUI-Programme schreiben, sammt einem GUI-Editor.



  • DEvent schrieb:

    Einfache, saubere Syntax, der man sofort ansieht was sie macht ohne viel wissen zu muessen.

    naja, das mit dem einrücken muss man wissen. aber für einen absoluten neueinsteiger muss das aber kein hindernis sein (nur wenn man schon andere sprachen kennt, ist es vielleicht doof).
    🙂



  • ;fricky schrieb:

    [...]ja, wenn man etwas englisch kann, ist für jeden sofort ersichtlich (ausser vielleicht das 'chr$'), was das machen soll. auch wenn er noch nie im leben programmcode gesehen hat.

    ist ne Behauptung die nicht stimmen muss. Für jemanden der noch nie Programmcode gesehen hat ist nichtmal unbedingt klar wo die for-Schleife aufhört, und was das "NEXT i" dahinter bedeuten soll. Er muss sich also auch erstmal ein wenig einlesen, bis er die Schleifensyntax und das CHR$ versteht.

    Wenn man den C++-Code richtig schreibt

    for (int s=33; s<256; ++s) 
    {
      cout << s << static_cast<char>(s) << endl;
    }
    

    sieht man sofort den Schleifenkörper. Und wenn man hier genauso weit gelesen hat (nämlich bis man die Schleifensyntax und den cast kennt), versteht man genausoviel, weil die Ausgabe mittels cout gleich auf der ersten Seite in jedem Buch/Tutorial drankommt.

    Deine Argumentation lautet also in etwa "Beim BASIC versteht jeder sofort alles bis auf das was wichtig ist um das ganze Programm richtig zu verstehen. Beim C++ versteht man erstmal nicht alles, weil man die Dinge nicht kennt, die wichtig sind um das Programm richtig zu verstehen". Etwas einseitig 😉



  • pumuckl, die BASIC-Syntax ist für Anfänger grundsätzlich einfacher zu verstehen. Einfach, weil vieles 'klar' ausgeschrieben wird, weil es weniger kryptisch ist. Das liegt auf der Hand, denke ich. Die Syntax einer for-Schleife muss man sich in beiden Sprachen anlesen, klar, nur in BASIC ist das halt eine Sache von Sekunden, in C(++) dauert es vielleicht schon Minuten. 😉



  • pumuckl schrieb:

    Wenn man den C++-Code richtig schreibt

    for (int s=33; s<256; ++s) 
    {
      cout << s << static_cast<char>(s) << endl;
    }
    

    ok, die geschweiften klammern sind ziemlich wichtig, aber der rest sieht weiterhin furchterregend aus. vielleicht sollte man aus '++s' besser 's=s+1' machen, die variablendeklaration aus der schleife rausnehmen und statt 'cout' printf verwenden, was auch den hässlichen cast, die << und das 'endl' beseitigt. damit führt man zwar einen, für anfänger undurchsichtigen printf-formatstring ein, aber das wäre wohl das kleinere übel.

    pumuckl schrieb:

    Deine Argumentation lautet also in etwa "Beim BASIC versteht jeder sofort alles bis auf das was wichtig ist um das ganze Programm richtig zu verstehen. Beim C++ versteht man erstmal nicht alles, weil man die Dinge nicht kennt, die wichtig sind um das Programm richtig zu verstehen". Etwas einseitig.

    nee, ich sage: bei basic versteht man auf anhieb (oder zumindest ohne grössere schwierigkeiten) den ablauf, weil man's nur mit einfachen, englischen wörtern zu tun hat (for, to, next, goto, usw.) und nicht mit seltsamen zeichen wie <<, ++ und grausamen dingen wie static_cast<a>(b). für anfänger sind schnelle aha-effekte sehr wichtig. später, wenn man die fundamentalsten grundlagen der programmierung gelernt hat, kann man sich immer noch auf sprachen mit kryptischer syntax (z.b. C-ähnlich) stürzen.



  • Hey, wie waere es denn mal mit etwas anderem zum Einstieg? Lisp, Scheme oder Haskell zum Beispiel. Gibt auch gute Buecher und video lectures (alles online).


Anmelden zum Antworten