Unterschiede zwischen den verschiedenen Programmiersprachen?

  • Was sind denn die größten Unterschiede zwischen den verschiedenen Programmiersprachen (C, C#, C++, C+, Delphi, Basic, Visual Basic...)? Welche sind miteinander verwandt? Und gibt es sowas wie "Wenn du Programmiersprache A kannst hast du es leichter Programmiersprache B zu erlernen" ?


    Sebian

  • Puh... Die Sprachen die du ansprichst basieren auf drei verschiedenen "Ursprachen": BASIC (Beginners All-Purpose Symbolic Instruction Code), Pascal und C.


    Wie der Name schon sagt ist BASIC am einfachsten zu erlernen, bietet aber auch am wenigsten Möglichkeiten. Pascal ist etwas komplizierter aufgebaut -- dafür aber auch ordentlicher. Während man in BASIC einfach "drauf los programmieren" kann muss man sich bei Pascal schon um mehr kümmern (hauptsächlich Kleinigkeiten wie Variablen zu deklarieren, jeden Befehl mit einem Strichpunkt abschließen usw.). Die C-Sprachen sind auf den ersten Blick noch bedeutend verwirrender und IMHO zum Einstieg nicht gerade geeignet.


    Miteinander verwandt sind

    • die diversen BASIC-Arten, von GWBASIC und QBASIC bis zu VBA (Visual Basic für Applications) und Visual Basic.
    • die verschiedenen Pascal-Dialekte wie Turbo Pascal, Borland Pascal und Delphi
    • die diversen C-Arten, also C, C++, Visual C++, C# usw.

    Ursprünglich waren die meisten Sprachen für DOS konzipiert. Visual Basic 1.0 gab es auch noch für DOS, prinzipiell sind aber sowohl Visual Basic als auch Delphi eben die Windows-Versionen der entsprechenden Programmiersprachen.


    Ich habe selber nur Erfahrung mit VB2, VB3, VB5 und Delphi 1, inzwischen programmiere ich eigentlich wenn überhaupt nur noch in PHP (also für Internetseiten). Visual Basic und Delphi sind sich dabei relativ ähnlich und IMHO beide für den Einstieg geeignet. Bei beiden lassen sich normale Windows-Programme relativ leicht erstellen: Die Benutzeroberfläche wird quasi "hingemalt" (also die Steuerelemente mit der Maus in den Fenstern positioniert), die Eigenschaften der Elemente lassen sich über eine Dialogbox komfortabel ändern und programmiert wird dann das Verhalten bei bestimmten Ereignissen.


    Ich persönlich würde zum Einstieg Delphi empfehlen: Wer erstmal in BASIC programmiert gewöhnt sich automatisch einen relativ schludrigen Programmierstil an, da der eben auch toleriert wird. Gerade wenn du vorhast später evtl. auf C oder auch PHP umzusteigen ist es IMHO sinnvoll, viele Sachen gleich "richtig" zu lernen. Mit einem guten Buch kann man sich die Sprache eigentlich problemlos selber beibringen :)

  • Zitat

    Original geschrieben von Weizen
    Miteinander verwandt sind

    • die diversen BASIC-Arten, von GWBASIC und QBASIC bis zu VBA (Visual Basic für Applications) und Visual Basic.
    • die verschiedenen Pascal-Dialekte wie Turbo Pascal, Borland Pascal und Delphi
    • die diversen C-Arten, also C, C++, Visual C++, C# usw.


    Das kommt darauf an, wie man es sieht. Verwandt heißt nicht unbedingt dem gleichem Paradigma gehorchend.
    Ich würde heute - auch wenn es ein steiniger Weg ist - mit OO-Programmiersprachen anfangen. Ein Umstieg zwischen Programmiersprachen innerhalb des gleichen Paradigmas ist aus meiner Erfahrung einfacher, weil man dann die Denkweise nicht ändern muß.


    MfG
    bimmelbommel

    Es ist besser seinen Mund zu halten, um für einen Narren gehalten zu werden als den Mund aufzumachen, um alle Zweifel zu beseitigen.

  • Re: Unterschiede zwischen den verschiedenen Programmiersprachen?


    Zitat

    Original geschrieben von Sebian
    Und gibt es sowas wie "Wenn du Programmiersprache A kannst hast du es leichter Programmiersprache B zu erlernen" ?


    Ja. Kannst du eine kannst du alle.
    Nicht, dass sich wirklich alle Sprachen von der Syntax her ähneln würden aber die Denkweise die dahintersteckt ist bei allen die gleiche.


    Ich hab mit Basic auf dem C64 angefangen, dann Pascal und Delphi gemacht, C++ gelernt und grade bin ich bei PHP dran.
    Fazit: Alles Mist :D


    Entweder du kannst gut logisch denken oder nicht. Bei mir ist das nicht der Fall. Ich zerbrech mir da den Kopf für Kleinigkeiten. Ist genau wie in Mathe. Die einen können es, die anderen raffen es nie.


    Ich würde C/C++ oder was auch immer lernen. Scheint zwar kompliziert aber ähnelt anderen Sprachen wie Java ziemlich. Sollte ne gute Basis sein.


    -SF³

  • Re: Re: Unterschiede zwischen den verschiedenen Programmiersprachen?


    Zitat

    Original geschrieben von SiemensFreak³
    Ja. Kannst du eine kannst du alle.
    Nicht, dass sich wirklich alle Sprachen von der Syntax her ähneln würden aber die Denkweise die dahintersteckt ist bei allen die gleiche.


    Das ist mit Verlaub Unsinn. Wenn ich mal ein paar geflügelte Worte zu Hilfe ziehen kann:


    Eine Programmiersprache die nicht deine Art zu denken beeinflusst, ist es nicht Wert gelernt zu werden.


    bimmelbommel (geiler Nick *G*) spricht einen wichtigen Punkt an: Paradigma. Die Verwandschaft in der "Art zu programmieren" ist bei Java und C++ sicherlich näher als bei C und C++. Natürlich kann man jede Sprache "vergewaltigen" und im gleichen (BASIC?)-Stil programmieren, aber dann verschenkst du sehr viele Möglichkeiten und handelst dir viele Nachteile ein. Jede Programmiersprache "fördert" eine bestimmte Art zu programmieren, und darauf sollte man sich einlassen, wenn man sie lernen will.


    Andererseits ist es auch wichtig sich klar zu machen warum man programmieren lernen will. Will man es nur um ein paar Kröten zu machen, oder will man sich wirklich mit der Materie auseinandersetzen, weil es einem Spaß macht. Falls ersteres, dann würde ich die wohl eine der weiter verbreiteteren OO-Sprachen empfehlen: Java oder Python wären ganz gut.
    Falls letzteres würde ich dir eher zu den exotischeren Sprachen raten. LISP (+Dialekte) ist bspw. eine Sprache die eine ganz besondere Eleganz mitbringt, weil sie nicht so endlos mit Syntax zugekleistert ist, es gibt einem einen sehr interessanten Blick auf die zugrundeliegenden Probleme.
    Python kommt dem auch noch relativ nahe, und bringt viele Bibliotheken etc. mit, die einem bei vielen praktischen Problemen entgegenkommen.


    Um deine Frage konkret zu beantworten: Man kann mit ein bisschen Syntax umlernen von einer in die andere Sprache umsteigen und irgendwie was zu Stande bringen. Aber für ein halbwegs durchschnittliches Verständnis/Können, musst du dich mit jeder Sprache gesondert auseinandersetzen.

    Viele Menschen denken, dass sie denken, wenn sie auch lediglich ihre Vorurteile umorganisieren
    - William James

  • Re: Re: Re: Unterschiede zwischen den verschiedenen Programmiersprachen?


    Zitat

    Original geschrieben von popostoepsel
    Das ist mit Verlaub Unsinn. Wenn ich mal ein paar geflügelte Worte zu Hilfe ziehen kann:


    Entweder ist SF³ Multitalent oder hat nie lange in einer Sprache programmiert...

    Zitat


    Andererseits ist es auch wichtig sich klar zu machen warum man programmieren lernen will. Will man es nur um ein paar Kröten zu machen, oder will man sich wirklich mit der Materie auseinandersetzen, weil es einem Spaß macht. Falls ersteres, dann würde ich die wohl eine der weiter verbreiteteren OO-Sprachen empfehlen: Java oder Python wären ganz gut.


    IMHO hat der OP den Vorteil, noch ganz "unbelastet" zu sein. Somit würde ich - wie gesagt - auch zu OO-Sprachen tendieren. Ich bin durch lange Jahre imperatives Programmieren "geschädigt". Ein Umstieg auf Beta und dann C++ hat mich doch vor einige Probleme gestellt: Da war es nicht damit getan, mal eben statt writeln printf zu tippen....
    Wenn, dann würde ich aber eher zu einer "richtigen" Sprache wie Java oder C++ und nicht zu sogennanten Skriptsprachen wie TCL raten (Arraygrenzen zur Laufzeit verändern... Zwar ungeheuer praktisch, aber letztendlich versaut man sich damit einen vernünftigen Stil).

    Zitat


    [...]


    Ganz Deiner Meinung.


    MfG
    bimmelbommel

    Es ist besser seinen Mund zu halten, um für einen Narren gehalten zu werden als den Mund aufzumachen, um alle Zweifel zu beseitigen.

  • Re: Re: Re: Re: Unterschiede zwischen den verschiedenen Programmiersprachen?


    Zitat

    Original geschrieben von bimmelbommel
    Entweder ist SF³ Multitalent oder hat nie lange in einer Sprache programmiert...


    Um genau zu sein: Beides. Aber das erste nicht im Bereich Programmieren also triffts das letztere ;)


    -SF³

  • prinzipiell ist es immer leichter, eine andere Sprache zu lernen, wenn man schon in einer vertraut ist. Denn das grundlegende Konzept ist sich doch meist ähnlich (Schleifen, Bedingungen, Funktionen, etc).
    Ich hatte arge Bedenken beim (verordneten) Umstieg von VB auf C#, und es ging doch besser als gedacht, auch wenn beide kaum miteinander verwandt sind.
    Deutlich einfacher wird aber z.B. der Umstieg von Java auf C oder umgekehrt, da hier sehr viel ähnlich ist. Ich konnt mich mit Java nie wirklich anfreunden, aber nachdem ich nun erste Erfolge mit C# habe, geht auch Java plötzlich viel einfacher.


    d@niel

  • ...und genau das stimmt nicht. Es gibt nämlich durchaus noch weitere Sprachen, die alle "Standard"-Konzepte (damit meine ich die am weitesten verbreiteten) auf den Haufen werfen. Zu nennen wären da z.B. das Konzept der "Logischen Programmierung" mit Prolog. Da gibt es z.B. keine Schleifen. Die Struktur sieht völlig anders aus. Rekursion ist hier das Stichwort. Oder LISP. Wenn ihr euch die mal genauer anguckt, werdet ihr feststellen, dass das etwas ganz anderes ist. Da hilft so gut wie kein Vorwissen durch C o.ä.


    Aber ich muss zugegeben, dass das meist Exoten sind. Dennoch macht mir Prolog sehr viel Spaß. Auch wenn ich gerade erst vor kurzem damit angefangen habe.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!