Welche Programmiersprache?

Tutorials.at
Verfügbare Informationen zu "Welche Programmiersprache?"

  • Qualität des Beitrags: 0 Sterne
  • Beteiligte Poster: The Dust - exbs - detewe89 - CRASH - Chiller - Xin - Gecko - dani93 - aeo
  • Forum: Tutorials.at
  • Forenbeschreibung: Programmierforum
  • aus dem Unterforum: Allgemeines
  • Antworten: 22
  • Forum gestartet am: Mittwoch 19.04.2006
  • Sprache: deutsch
  • Link zum Originaltopic: Welche Programmiersprache?
  • Letzte Antwort: vor 16 Jahren, 30 Tagen, 10 Stunden, 43 Minuten
  • Alle Beiträge und Antworten zu "Welche Programmiersprache?"

    Re: Welche Programmiersprache?

    The Dust - 24.06.2007, 12:59

    Welche Programmiersprache?
    Hallo erstmal.
    Ich weiß das diese Frage hier wohl sehr oft vorkommt , aber ich bin ziemlich überfordert mit der Auswahl einer Programmiersprache. Da die Interesse für das Programmieren eher von Heute auf Morgen gekommen ist, habe ich Angst das ich mit einem falschen Start die Lust verliere. Habe schon Pascal gedownloadet aber ist mir irgendwie nicht sympatisch weil ich auch Probleme beim Speichern habe. Ist glaube ich nicht ganz meine Sprache...
    Also bin totaler Anfänger in Sachen Programmieren aber die Interesse für Computer und allem was dazu gehört war schon immer da. Mein Ziel, wie bei vielen anderen denke ich, ist das ich irgendwann mal ein Spiel programmieren kann. Also mein Schwerpunkt liegt jetzt nicht auf Websites, was ja schon einige Sprachen ausschließt.
    Was empfehlt ihr mir?



    Re: Welche Programmiersprache?

    exbs - 24.06.2007, 13:40


    Ich habe mit C begonnen und habe die Lust nicht verloren :wink: , demnach kann ich es dir empfehlen.

    Natürlich wäre für den Anfang PASCAL auch eine gute Wahl, zumal diese Sprache speziell zum erlernen der Grundstrukturen beim Programmieren gedacht war.

    Compiler:
    C - DEV C++ (wird nicht weiterentwickelt)
    - CodeBlocks (wird daran noch gearbeitet ?!)
    PASCAL - DEV PASCAL
    - F(ree)P(ascal)C(ompiler) (finde ich für Pascal am besten, aber unbedingt die Pascal-Hilfe downloaden)



    Re: Welche Programmiersprache?

    detewe89 - 24.06.2007, 14:02


    Ich kann mir der Meinung von exbz nur anschließen.

    Begonnen hab ich zwar mit Pascal, bin aber sehr schnell auf C umgestiegen (und von der Lernschwierigkeit bestand für mich keinerlei Unterschied).

    Zwar ist C nicht gerade DIE Einsteigersprache, aber schwer ist sie keinesfalls!

    C hat eine Menge Vorteile:

    - sie ist die z. Zt. wichtigste Programmiersprache (Pascal u. Basic sind eher veraltet und werden nicht mehr wirklich benutzt)

    - der Quelltext ist, im Ggs. zu Basic, wirklich sehr übersichtlich und leicht lesbar

    - C ist eine gute Grundlage für die modernen Sprachen C++ u. Java

    - man kann C-Quelltexte sowohl unter Windows als auch unter Linux in Programme umwandeln (=compilieren)

    - C ist DIE Sprache für Linux

    - C erfährt von vielen Pogrammen Unterstützung

    - C ist geeignet für sog. Modularisierung, d. h., man kann klene Programmbausetine schreiben, die man dann in mehrere Programme einbinden kann

    - C/C++ wird auch in vielen Berufen, die nichts mit Informatok zu tun haben, verlangt und ist somit sehr von Vorteil

    => also eine moderne u. flexible Sprache, die man vielseitig anwenden kann und die eine stabile Grundlage darstellt!


    Persönlich würde ich als Compiler wirklich Dev-C++ empfehlen, sehr einsteigerfreundlich!


    Gruß und viel Spaß beim "Proggen" :D
    Daniel



    Re: Welche Programmiersprache?

    The Dust - 24.06.2007, 21:00


    Schon mal ein großes Dankeschön für eure Antworten! Dann werde ich wohl C lernen. Wird zwar etwas schwieriger als Pascal, aber C hat halt deutliche Vorteile.
    Nun gibs da ja verschiedene IDE's für die Sprachen. Welche sollte ich da nehmen? zb. Gibs das hier:
    http://www.microsoft.com/germany/msdn/vstudio/products/express/vb/default.mspx
    In den FAQ steht das ist ein IDE für C. Aber heißt ja Microsoft Visual Basic. Blicke da nicht durch. Und die anderen zwei Dev-C++ und CodeBlocks sind ja für C++ und nicht für C. Habe Erklärungsbedarf :oops: :roll:



    Re: Welche Programmiersprache?

    CRASH - 24.06.2007, 22:38


    Hol dir den Dev-C++.Wo C++ drauf steht ist nicht unbedingt C++ drin ;)

    Naja mit Dev-C++ kann man sowohl in C als auch in C++ programmieren.Bevor du ein neues Projekt startest,fragt der dich immer in welcher Sprache du es schreiben willst und in welcher Anwendung(Console,Win-API).

    Also hol dir den Dev-c++ und nicht den Dreck von Microsoft ;)



    Re: Welche Programmiersprache?

    Chiller - 25.06.2007, 13:40


    Visual C++ 2005 würde ich dir als Anfänger nicht empfehlen. Ist zu kompliziert. Nimm was einfacheres z.B. Code::Blocks (benutze ich auch)
    das ist sehr übersichtlich und kompakt und du hast alles was du brauchst.



    Re: Welche Programmiersprache?

    Xin - 25.06.2007, 17:19

    Re: Welche Programmiersprache?
    The Dust hat folgendes geschrieben: ich bin ziemlich überfordert mit der Auswahl einer Programmiersprache. Da die Interesse für das Programmieren eher von Heute auf Morgen gekommen ist, habe ich Angst das ich mit einem falschen Start die Lust verliere.
    Die Angst solltest Du nicht haben, Programmieren zu lernen ist frustrierend und man braucht auch die Motivation, auch mal ein paar Tage lang rumzuprobieren, bis man verstanden hat, warum es zuvor nicht ging.
    In 99,99% ist es nicht der Compiler schuld.

    The Dust hat folgendes geschrieben: Also bin totaler Anfänger in Sachen Programmieren aber die Interesse für Computer und allem was dazu gehört war schon immer da. Mein Ziel, wie bei vielen anderen denke ich, ist das ich irgendwann mal ein Spiel programmieren kann.

    Was kannst Du? Was willst Du können?
    Spiele kann man in vielen Sprachen programmieren.

    Möchtest Du wirklich verstehen, was Du tust, dann solltest Du eine Sprache lernen, die Dir das auch abverlangt: C++.

    Arbeitest Du unter Linux oder möchtest irgendwann wechseln? C++.

    Möchtest Du es etwas einfacher haben, akzeptierst aber einige Einschränkungen in den Möglichkeiten der Sprache: Java, C# oder auch Delphi.

    Möchtest Du schnell etwas sehen, akzeptierst aber, dass die Sprache Dich stark eingrenzt, sobald Du etwas mehr programmieren kannst: PureBasic.

    Von Pascal rate ich ab.

    Programmieren zu lernen, bedeutet nicht eine Sprache zu lernen. Je mehr Du kannst, desto einfacher wird auch der Wechsel der Sprache. Um Programmieren zu lernen braucht man Jahre. Mit einem guten Lehrer und hoher Motivation kannst Du in C++ in einem Jahr auf dem Level sein, ein erstes Spiel zu schreiben. 3-5 Jahre sind ansonsten realistisch.
    Dafür ist C++ aber auch das beste Strategiespiel, wo gibt. ^^
    Und so sehe ich es auch: Manche Level brauchen einfach länger als andere, bis man sie ausgeknobelt hat. Dafür wird das Spiel nicht langweilig, auch wenn man seine Strategien jahrzehntelang verbessert hat und glaubt.

    Viel Spaß.



    Re: Welche Programmiersprache?

    The Dust - 26.06.2007, 13:34


    @Xin
    Ich stimme dir völlig zu und glaube(nein ich weiß es :D ) das ich genug Motivation und Ehrgeiz habe um Programmieren zu erlernen.

    @all
    So jetzt hab ich mir Code::Blocks geholt (Hab die Version 1.0. Ist schon die aktuellste oder?) und habe gleich ein Problem. Ich beschreib das mal Schritt für Schritt. Also:
    1. Ich gehe auf File und dann auf New Projects,
    2. Es erscheint das Fenster "New from template" wo ich "Console Application" auswähle(ich hoffe das ist richtig so) und unten bei den "file options" auf "C source" umstelle (denn ich will ja erstmal in C proggen) und dann klicke ich auf Create,
    3. Dann muss ich das Ganze irgendwo abspeichern und komme wieder zum Hauptprogramm. Normalerweise müsste ich ja jetzt in eines der leeren Fenster meinen Quellcde reinschreiben können oder?
    4. Dann hab ich den normalen Microsoft Editor(ich benutze übrigends XP) geöffnet und mein "Hello World" da rein geschrieben, gespeichert und mit Code::Blocks geöffnet und auf "Run" geklickt. Zuerst dachte ich alles funktioniert aber dann schaute ich mir mein erstes Programm genauer an und bemerkte das "Hello world!" statt "Hello Word"(was ja mein Befehl war) ausgegeben wurde.
    5. So löschte ich den ganzen Quellcode, drückte wieder auf "Run" und siehe da? Es würde das "Hello world!"-Programm geöffnet, ohne das ich irgendetwas von mir eingegeben wurde. :shock:
    Wie soll den das gehen? Und wenn ich etwas anderes in den Quellcode schreibe kommt immer das "Hello world!" Brauche Hilfe.


    Passt zwar nicht unbedingt hier hinein aber hoffe ihr könnt mir helfen. Sonst verschiebt den Beitrag einfach.



    Re: Welche Programmiersprache?

    Xin - 26.06.2007, 14:53


    The Dust hat folgendes geschrieben: @Xin
    Ich stimme dir völlig zu und glaube(nein ich weiß es :D ) das ich genug Motivation und Ehrgeiz habe um Programmieren zu erlernen.
    Gut. :-) Dann kann ich Dir ja jetzt sagen, dass nach 10 Jahren C-Programmierung mein Highlight in Sachen Fehlersuche eintrat.
    8 Wochen Fehlersuche - aber dafür war der Fehler wenigstens auch gut. ^^

    The Dust hat folgendes geschrieben: 4. Dann hab ich den normalen Microsoft Editor(ich benutze übrigends XP) geöffnet und mein "Hello World" da rein geschrieben, gespeichert und mit Code::Blocks geöffnet und auf "Run" geklickt. Zuerst dachte ich alles funktioniert aber dann schaute ich mir mein erstes Programm genauer an und bemerkte das "Hello world!" statt "Hello Word"(was ja mein Befehl war) ausgegeben wurde.
    Deine Beschreibung ist nicht grade sehr stichhaltig.
    Also schau ich mal in meine Kritstallkugel und sage Dir, dass Du die falsche Datei editiert hast, bzw. die Datei nachdem Du sie editiert hast, von CodeBlocks wieder überschrieben wird.
    Ich verstehe schon nicht, wieso Du eine IDE installierst, um dann mit 'nem popligen Editor zu programmieren.
    Wenn die Datei nicht zu Deinem Projekt gehört (Projekt->einfügen) wird sie ignoriert. Wenn Du das Projekt anlegst, gibt es bereits eine Datei, die Du im Idealfall mit CB editierst.

    Bitte beschreib Deine Fehler detailiert, meine Kristallkugel funktioniert nur einmal am Tag und ich programmiere selbst. ^^

    The Dust hat folgendes geschrieben: 5. So löschte ich den ganzen Quellcode, drückte wieder auf "Run" und siehe da? Es würde das "Hello world!"-Programm geöffnet, ohne das ich irgendetwas von mir eingegeben wurde. :shock:
    Wie soll den das gehen? Und wenn ich etwas anderes in den Quellcode schreibe kommt immer das "Hello world!" Brauche Hilfe.
    Offenbar hatte meine Kristallkugel recht: Was Du da in Deinen MS-Editor tippst, hat nichts mit dem Projekt zu tun, das Code::Blocks kompiliert.

    Schau mal im Editor von Code::Blocks nach, da wird das "Hello World"-Beispiel noch drin stehen.



    Re: Welche Programmiersprache?

    The Dust - 26.06.2007, 16:03


    @Xin
    Ich habe ja nur den Quellcode in den normalen Editor geschrieben weil ich nicht weis wo ich ihn in Code::Blocks hinein schreiben soll. Habe vor dem ich mich entschieden habe C zu lernen Pascal ausprobiert und da musste man nur File--->New Projekt und schon konnte man den Quellcode ins Fenster schreiben. Bei Code::Blocks scheint das anders zu sein. Ich habe zwar ein Fenster gefunden wo man reinschreiben kann(links oben,das weiße Blatt anklicken,heißt "new file") aber egal was ich schreibe, ich kann nicht starten. Das "Run" ist grau und nicht anklickbar.
    Das komische ist ja das das "Hello world!" eingespeichert zu sein scheint. Ich gehe über "File"--->"New Project----->"Create" und klicke ohne irgendetwas geschrieben zu haben auf Run. Dann kommt dieses Fenster : "It seems that this project has not been built yet. Do you want to build it now?" und ich klicke auf Ja und was passiert? *bigseufz* Und wieder begrüßt mich Hello world obwohl ich nur ein neues(leeres!!!) Projekt aufgemacht habe und es gestartet habe. Ich hoffe deine Kristallkugel ist noch aktiv :roll:



    Re: Welche Programmiersprache?

    Xin - 26.06.2007, 22:58


    The Dust hat folgendes geschrieben: @Xin
    Ich habe ja nur den Quellcode in den normalen Editor geschrieben weil ich nicht weis wo ich ihn in Code::Blocks hinein schreiben soll.
    Wenn Du Rentner wärst, könnte ich die Zurückhaltung am Computer verstehen. Ich gehe davon aus, dass Du kein Rentner bist, ergo mach die Augen auf, lies was da steht, schließlich sollte man des Englischem halbwegs mächtig sein und probier Dich durch.

    In dem Fall siehst Du links 'Default workspace', darunter 'Console application'. Aufmachen. Du siehst 'Sources'. Aufmachen. 'main.c' anklicken.
    Der Editor öffnet die Datei, die er kompiliert: die, die das Hello World ausgibt.

    The Dust hat folgendes geschrieben: Habe vor dem ich mich entschieden habe C zu lernen Pascal ausprobiert und da musste man nur File--->New Projekt und schon konnte man den Quellcode ins Fenster schreiben.
    Das hat nix mit Pascal oder C zu tun, sondern wie die IDE arbeitet.
    Code::Blocks halte ich für eine ganz brauchbare IDE.

    The Dust hat folgendes geschrieben: Bei Code::Blocks scheint das anders zu sein. Ich habe zwar ein Fenster gefunden wo man reinschreiben kann(links oben,das weiße Blatt anklicken,heißt "new file") aber egal was ich schreibe, ich kann nicht starten. Das "Run" ist grau und nicht anklickbar.
    Warum sollte es auch... Du editierst irgendein File, das nicht zu einem Projekt gehört. Du editierst halt einen Text.

    The Dust hat folgendes geschrieben: Das komische ist ja das das "Hello world!" eingespeichert zu sein scheint. Ich gehe über "File"--->"New Project----->"Create" und klicke ohne irgendetwas geschrieben zu haben auf Run. Dann kommt dieses Fenster : "It seems that this project has not been built yet. Do you want to build it now?" und ich klicke auf Ja und was passiert? *bigseufz* Und wieder begrüßt mich Hello world obwohl ich nur ein neues(leeres!!!) Projekt aufgemacht habe und es gestartet habe. Ich hoffe deine Kristallkugel ist noch aktiv :roll:
    Dafür brauche ich keine Kristallkugel.

    Du hast kein leeres Projekt aufgemacht, sondern eine Konsolenanwendung. Die Funktion 'main' ist automatisch geschrieben und beinhaltet testweise die Ausgabe 'Hello World'.

    Alles, was in Deinem Workspace zum aktiven Projekt gehört (fett gedruckt, also 'Console Application'), wird kompiliert.
    Der Sourcecode existiert, auch wenn Du ihn Dir nicht ansiehst und wenn Du ihn kompilierst, kommt halt ein Hello World raus.

    Wenn Du jetzt irgendwas in CodeBlocks oder MSEditor schreibst, was aber in beiden Fällen nichts mit der 'Console Application' zu tun hat, dann kompiliert er weiterhin das aktive Projekt - also das unveränderte 'Hello World'.



    Re: Welche Programmiersprache?

    The Dust - 27.06.2007, 10:59


    Xin hat folgendes geschrieben:
    Wenn Du Rentner wärst, könnte ich die Zurückhaltung am Computer verstehen.


    Bin 15 :wink: . Stelle ich mich schon so blöd an? :oops:

    Aber naja....jetzt geht ja alles :D . Vielen Dank für deine ausführliche Hilfe! Hab halt bei Code::Blocks das Fenster "Messages" mit öffen gehabt und hab deßhalb nicht gesehen das man beim "Default workspace" weiterklicken kann. So nun kanns endlich losgehen *freu*.



    Re: Welche Programmiersprache?

    Xin - 27.06.2007, 12:14


    The Dust hat folgendes geschrieben: Xin hat folgendes geschrieben:
    Wenn Du Rentner wärst, könnte ich die Zurückhaltung am Computer verstehen.

    Bin 15 :wink: . Stelle ich mich schon so blöd an? :oops:
    Hmmm... in diesem Fall....naja... ;-)

    Jeder hat mal angefangen.
    The Dust hat folgendes geschrieben: Aber naja....jetzt geht ja alles :D . Vielen Dank für deine ausführliche Hilfe! Hab halt bei Code::Blocks das Fenster "Messages" mit öffen gehabt und hab deßhalb nicht gesehen das man beim "Default workspace" weiterklicken kann. So nun kanns endlich losgehen *freu*.

    Viel Erfolg. Um die nächste Frage vorweg zu nehmen: Wenn Du Deinen Code auf mehreren Dateien verteilst, muss jede Datei zum Projekt gehören, also unter "Console Application" (oder wie Du es nennst), sonst wird die Datei ignoriert.

    Wenn Du unter Linux programmierst, gibt es über die ANSI-Codes die Möglichkeit sehr schnell ASCII-Grafik zu erstellen. Die Grafikausgabe ist leicht zu programmieren und wenn Du Demos wie 'bb' (Linux) kennst, merkst Du sicherlich schnell, dass "Buchstaben" gezielt ausgeben, durchaus sehr anspruchsvoll sein kann. Allerdings sollte eine leistungsfähige Konsole nicht fehlen. Unter Windows ist "conio" das Stichwort, aber die Standard-Windows-Konsole eignet sich vorrangig dafür, um sich darüber zu ärgern.

    bb gefällt mir besser, aber dieses Demo (1) auf der Amiga-Console hat auch ein paar nette Effekte. Der Überflug um die Bergspitze braucht sicherlich länger, aber die rotierenden Würfel wären wohl machbar - ich gehe davon aus, dass Sinus und Cosinus mit 15 soweit bekannt sind.

    (1) http://www.youtube.com/watch?v=ho8TJdWU7EY



    Re: Welche Programmiersprache?

    Gecko - 20.02.2008, 23:04


    Hallo.

    Ich bin noch sehr neu hier. Hab mich mal ein bisschen durch das Forum gelesen und verfolge ähnliche Interessen wie The Dust.
    Ich habe mich schon daran gemacht C zu lernen als mir eingefallen ist, dass in einem anderen Forum wer gemeint hat, dass der Einstieg in C noch leichter fällt, wenn man davor Java gelernt hat/versteht.

    Was sagt ihr dazu? Fällt der Einstieg mit Java wirklich leichter?

    Sry, wenn diese Frage schon irgndwo gestellt wurde, hatte aber keinen Bock mir jetz alles durchzulesen.



    Re: Welche Programmiersprache?

    Xin - 21.02.2008, 11:18


    Gecko hat folgendes geschrieben: Ich habe mich schon daran gemacht C zu lernen als mir eingefallen ist, dass in einem anderen Forum wer gemeint hat, dass der Einstieg in C noch leichter fällt, wenn man davor Java gelernt hat/versteht.
    Derjenige hat natürlich recht. Wenn Du programmieren kannst, ist es in der Regel einfacher auf eine Sprache zu wechseln, denn Du musst das Programmieren nicht neu lernen.

    Ob Du dabei von Java auf C++ umsteigst oder von C++ auf Java spielt dabei aber keine Rolle. Das Erlernen der 2. Sprache bleibt einfacher.
    Allerdings wirst Du die 2. Sprache immer mit der ersten vergleichen und als Anfänger wirst Du C++ aus der Java-Perspektive kaum schätzen können. Die Leistung der Sprachfeatures von C++ wird sich Dir erst erschließen, wenn Du alles über die Sprache Java weißt und feststellst, dass an dieser Stelle nur noch mit C++ weitergeht. Und das wirst Du nicht wissen, wenn Du C++ schon am Anfang als zu schwer einschätzt und es daher nie ganz gelernt hast.
    Stichwörter wären hier beispielsweise Mehrfachvererbung, eingebettete Klassen, Template-Programmierung oder der kontrollierte Abbau von nicht benötigten Resourcen.
    Die Garbage Collection (automatisches Freigeben von nicht mehr verwendetem Speicher) von Java kann ein Feature sein. Oder ein Ausschlusskriterium, denn sie verbraucht unkontrolliert Rechenleistung. Springt im Auto die Garbagecollection an während man einen Unfall baut, geht der Airbag eben eine Sekunde später auf. Als Java-Programmierer bist Du nicht in der Lage, dieses Problem sinnvoll und sicher zu lösen. Es ist in Java nicht sicher programmierbar. Hier Java zu verwenden wäre tödlich.

    C ist als Vorbereitung von C++ zu verstehen, keine neue Anwendung sollte heute noch in purem C geplant werden. 20 kleine Übungsprogramme (500-1000 Zeilen) in C und dann auf C++ wechseln.

    Gecko hat folgendes geschrieben: Was sagt ihr dazu? Fällt der Einstieg mit Java wirklich leichter?
    Ich halte es gut möglich, dass der Einstieg in Java einfacher ist, als in C/C++. Dennoch rate ich Dir dazu in C/C++ weiter zu machen. Ich selber habe C vor dem Java-Hype gelernt.

    C ist eine Sprache, die sehr nah am Computer liegt, Java hingegen ist eine Sprache, die syntaktisch ähnlich wie C/C++ aussieht, aber so extrem weit vom Computer entfernt liegt, dass da eine Virtual Maschine dazwischen passt. Du arbeitest nie mit Deinem Computer, nie mit Windows, nie mit Linux, nie mit MacOS. Nur Java.
    Und wenn Java was nicht kann - und das passiert mir andauernd - dann musst Du Dich an der Virtual Maschine vorbeidrängen und per Java Native Interface arbeiten. Java Native Interface heißt konkret, das Feature in C/C++ zu programmieren. Das wird einem Anfänger nicht passieren, aber vielleicht willst Du nicht ewig Anfänger bleiben und dann ist es keine freiwillige Entscheidung mehr, die aus Javaperspektive so unsinnig schwer erscheinende Sprache zu lernen.


    Du entscheidest Dich hier für eine Perspektive auf das gleiche Problem: Du möchtest programmieren lernen. Programmieren lernst Du unabhängig zur Programmiersprache. Die Programmiersprache ist nur das Mittel, das Du zusätzlich lernen musst, damit Du etwas programmieren kannst.

    Wenn Du Dir das ganze aus der Perspektive C/C++ ansiehst, so musst Du verstehen, warum Du etwas so programmierst, wie Du es programmierst. Du hast die Möglichkeit so ziemlich jeden Fehler zu machen, Du wirst sehr viele machen und Du wirst verstehen, warum manches geht und warum manches nicht geht.

    Java ist eine andere Perspektive. Java ist dafür gedacht, möglichst produktiv Code zu erzeugen. Du wirst verstehen, warum das, was Du programmiert hast, geht. Du wirst also schneller zu Ergebnissen kommen, was Du nicht damit verwechseln solltest, dass die Sprache einfacher wäre. Du wirst schneller vorzeigbare Programme haben, aber Du wirst wesentlich weniger Verständnis entwickeln, was Du da eigentlich wirklich programmiert hast. Du wirst nicht verstehen, warum Du es nicht anders programmiert hast. Du wirst Dir auch keine Gedanken darüber machen, wieviele Resourcen Dein Programm eigentlich verschwendet oder ob man es effizienter hätte lösen können. Du wirst bessere Wege nicht sehen, weil sie in Java überhaupt nicht sinnvoll formulierbar sind.
    Während des Studiums habe ich Tutorien gegeben in C/C++ für Leute, die 2-3 Semester Java programmiert haben. Einer sagte mir während des Tutoriums mal, dass er nun verstanden habe, was er die letzten zwei Semester eigentlich programmiert habe.

    In der Firma in der ich zurzeit arbeite wird vorrangig in Java programmiert, lediglich die Kerntechnologie wird in C++ entwickelt, da hier maximale Effizienz der Algorithmen gefragt ist. Der Rest muss möglichst schnell entwickelt werden, aber nicht schnell ablaufen.
    Eingestellt werden aber bevorzugt Leute, die C++ können, weil die eher verstehen, was sie in Java dann ausdrücken.

    Aus der C++-Perspektive ist Java ein kastriertes C++. Auch bekannt als 'C++--'. C++ ist - professionell angewandt - typsicherer (damit entgegen der landläufigen Meinung fehlerunanfälliger!) und deutlich leistungsfähiger als Java. Gut geplante C++ Programme sind Kombinationen aus vorhandenen Eigenschaften und Fähigkeiten.
    class Wohnung : public Lebensraum, public Wohnzimmer, public Badezimmer, public Schlafzimmer {};
    class WohnungMitBalkon : public Wohnung, public Balkon {};
    Fertig.

    Aus Java-Perspektive bietet C++ viele Stolperfallen, um die man sich in Java nicht kümmern muss, allerdings zu dem Preis, dass man auf interessante und effizientere Features verzichtet und resourcenverschwendender arbeiten muss.
    In Java kombiniert man die Behauptung, dass Fähigkeiten existieren, anschließend muss man aber zusätzlich noch für jede Fähigkeit erklären, wie sie den benutzt werden soll. Hier kann Java deutlich unproduktiver als C++ werden.
    Hier muss für jedes Feature, dass die einzelnen Zimmer mitbringen erklärt werden, was das eigentlich bedeutet. Nur von einer einzigen Eigenschaft können die Fähigkeiten direkt übernommen ("vererbt") werden.

    C++ ist die aufwendigste Sprache, die ich derzeit kenne. In der Leistung, wie auch beim Lernaufwand. Du fängst beim lernen ganz unten an.
    Aber... beherrschst Du C++, beherrschst Du auch so ziemlich alles andere.

    Bleibt die Frage... wieviel willst Du eigentlich lernen? Welche Perspektive willst Du beim Programmieren haben? Wo setzt Du Deine Grenzen? Wo setzt Du Prioritäten?
    Schneller Erfolg oder langfristiger Erfolg?



    Re: Welche Programmiersprache?

    Gecko - 21.02.2008, 17:08


    Danke für diese ausführliche Antwort :P

    Dann werd ich mich wohl mal weiter an C ranmachen.



    Re: Welche Programmiersprache?

    Xin - 21.02.2008, 18:29


    Gecko hat folgendes geschrieben: Danke für diese ausführliche Antwort :P

    Dann werd ich mich wohl mal weiter an C ranmachen.
    Guter Plan.

    Dauert länger, wenn Du wirklich programmieren willst, bringt es Dich aber weiter.

    Ich habe rund 15 Jahre programmiert, bevor ich meine Grenzen die Grenzen von C++ überschritten. Von daher, kann man sich mit C++ schon ein paar Jahre beschäftigen, bevor C++ einen in die Enge treibt.



    Re: Welche Programmiersprache?

    dani93 - 24.02.2008, 13:00


    Also mein Programmierlehrer hat in der ersten Stunde gesagt:

    "C ist zwar nicht die Beste oder neueste Programmiersprache, aber wer C perfekt beherrschert, kann in nur wenigen Wochen andere Sprachen wie C++ oder Java lernen, da sie alle irgendwie auf C basieren."

    Zitat: Ich habe rund 15 Jahre programmiert, bevor ich meine Grenzen die Grenzen von C++ überschritten. Von daher, kann man sich mit C++ schon ein paar Jahre beschäftigen, bevor C++ einen in die Enge treibt.

    Mit den anderen Programmiersprachen kenn ich mich aber (noch) nciht aus. Deshalb eine Frage an erfahrenere Programmierer:
    Wo sind denn eurer Meinung nach die Grenzen von C++?
    Bzw. was kann Java oder C# was C++ nicht kann?



    Re: Welche Programmiersprache?

    Xin - 24.02.2008, 16:30


    dani93 hat folgendes geschrieben: Also mein Programmierlehrer hat in der ersten Stunde gesagt:

    "C ist zwar nicht die Beste oder neueste Programmiersprache, aber wer C perfekt beherrschert, kann in nur wenigen Wochen andere Sprachen wie C++ oder Java lernen, da sie alle irgendwie auf C basieren."
    Ich gebe Deinem Lehrer bedingt recht.
    Man kann in C alles machen, was man in C++ machen kann und man kann alles formulieren, was Java kann. In C++ kann man alles formulieren, was C kann, in Java kann man aber nicht alles beschreiben, was C kann.

    Java fällt also erstmal raus. Obwohl C alles kann, was C++ kann, hat C++ trotzdem eine klare Existenzberechtigung. C++ und Java beschreiben eine andere Form von Programmierung (Objektorientiert). Man kann in C auch objektorientiert programmieren, doch es ist deutlich aufwendiger und man muss ein Konzept verstehen und anwenden, dass von der Sprache selbst so gar nicht unterstützt wird.
    Java und C++ vereinfachen die objektorientierte Programmierung also.

    dani93 hat folgendes geschrieben: Zitat: Ich habe rund 15 Jahre programmiert, bevor ich meine Grenzen die Grenzen von C++ überschritten. Von daher, kann man sich mit C++ schon ein paar Jahre beschäftigen, bevor C++ einen in die Enge treibt.

    Mit den anderen Programmiersprachen kenn ich mich aber (noch) nciht aus. Deshalb eine Frage an erfahrenere Programmierer:
    Wo sind denn eurer Meinung nach die Grenzen von C++?
    Bzw. was kann Java oder C# was C++ nicht kann?
    C++ hat grundsätzlich gesehen keine Grenze mehr, genauso wenig wie C. C ist vereinfachte Maschinensprache (also alles, was die Maschine kann, kann mit C angesprochen werden) und C++ ist eine objektorientierte Erweiterung zu C - man kommt weiterhin an alles ran.
    Java beschreibt eine virtuelle Maschine. Die VM kann aber nicht alles, was ein normaler PC kann, sie deckt nur einen Teilbereich ab, bringt den Vorteil mit sich, dass ein Java Programm dafür nicht wissen muss, ob es auf einer Sun oder einem PC, auf Windows, Solaris, Linux oder MacOS läuft. Es läuft (theoretisch!). Da die VM häufig nicht reicht, sind Javaprogramme aber häufig doch auf eine Plattform gebunden. Für die VM muss man eine aufwendige, schwerfällige, riesige Software mitinstallieren, nur um ein Hello World zu präsentieren, was in C++ in wenigen hundert Bytes geht.

    Zu den wichtigen Punkten, die Java nicht beherrscht, zählen Mehrfachvererbung und echte Templates (generics in Java sind eine Katastrophe und sollen Grundfunktionen von Templates simulieren(!)). Es gibt keine Objekte, die aus mehreren Objekten bestehen, sondern nur sogenannte "Referenzen". Referenzen hat man eingeführt, um die fehleranfällige Zeiger-Programmierung in C zu umgehen. Faktisch sind Java-"Referenzen" aber Zeiger, die genauso unsicher sind, wie in C. C++ enthält neben den Zeigern auch (C++-) Referenzen, die zusätzlich versichern, dass sie auf ein gültiges Objekt zeigen. Eine Referenz ist also gleichzeitig eine Absicherung, die Java-"Referenzen" nicht bieten.

    Zurück zu den Grenzen von C++. C++ ist die erste populäre OOP-Sprache gewesen und entwickelt sich sehr langsam, dafür sehr kontrolliert. Java betreibt regelrechten Wildwuchs, wie z.B. PHP, beschränkt sich jedoch in Erweiterungen der VM, so dass interessante Features nicht mitwachsen, sondern lediglich die Bibliotheken voller Funktionen sind, die man nicht verwenden soll/darf/kann.
    Auch C# hat nur bedingt aus Fehlern in C++ gelernt und ist - Microsoft typisch - nur ein geringfühgig verbesserter Clon eines Konkurrenten: Java. Allen drei Sprachen fehlen Formulierungsmittel für Abläufe, abstrakte Variablen. Mehrfachvererbung ist gestrichen, weil man sie dafür verstehen müsste, bzw. sie sonst falsch anwenden könnte. Alle drei Sprachen sind schlecht, was Arrayverarbeitung (Strings) betrifft. Das sind keine Grenzen, das kann man nachreichen, aber es schränkt effektive Entwicklung ein. Weiterhin verfolgen Java und C# mit Exceptions als Fehlerbehandlung ein leistungsfressendes, verwaltungsaufwendiges, und daher vom Programmierung gern falsch genutztes Fehlerbehandlungssystem, dass entsprechend ineffektiv ist. Das haben C# und Java von C++ übernommen, aber in C++ wird es sehr wenig verwendet.
    Hier lässt sich aber einiges machen.
    Eine restriktive Sprache, die die Möglichkeiten und den Speed von C++ bietet, fehlt derzeit vollständig.
    Ich arbeite dran... ^^



    Re: Welche Programmiersprache?

    dani93 - 25.02.2008, 19:43


    Xin hat folgendes geschrieben:
    Ich arbeite dran... ^^

    Dann noch viel Spaß und Erfolg.



    Re: Welche Programmiersprache?

    aeo - 25.02.2008, 20:17


    Zitat: Eine restriktive Sprache, die die Möglichkeiten und den Speed von C++ bietet, fehlt derzeit vollständig.
    Ich sag nur: Delphi ;)


    aeo



    Re: Welche Programmiersprache?

    Xin - 25.02.2008, 23:40


    dani93 hat folgendes geschrieben: Xin hat folgendes geschrieben:
    Ich arbeite dran... ^^
    Dann noch viel Spaß und Erfolg.
    Ich arbeite viel daran, den Quelltext klein und übersichtlich zu halten.

    Als ich das letzte mal geguckt habe, waren es 2,3MB minimal redundanten Quelltext und grob geschätzt habe ich soviel Code auch schon zwischenzeitlich weggeschmissen.
    Spaß endet bei etwa 1 MB Quelltext, danach weiß man Features wie CodeCompletion usw. sehr zu schätzen. ;-)



    Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken



    Weitere Beiträge aus dem Forum Tutorials.at

    Befehle / Funktionen - gepostet von Walgo am Mittwoch 18.07.2007
    Fahler meldung - gepostet von el_bandito21 am Freitag 07.07.2006
    Until geht nicht! - gepostet von Elessar am Samstag 10.06.2006
    Datei öffnen - gepostet von ringo am Donnerstag 23.08.2007
    Micrsoft Visual C++ Kompilieren - gepostet von Cookie am Freitag 03.11.2006
    Units - gepostet von C+++ am Montag 29.01.2007
    Programme mit Pascal - gepostet von bato am Montag 01.05.2006
    Brauche Hilfe - gepostet von Belphegor am Montag 05.03.2007
    Mein Programm HILFE GESUCHT!! - gepostet von Pole am Montag 11.12.2006
    Kostenloser Installmaker - gepostet von mitti am Donnerstag 17.05.2007



    Ähnliche Beiträge wie "Welche Programmiersprache?"

    Welche ist die schlimmste Map auf Erden? - Anonymous (Donnerstag 08.07.2004)
    welche stoßdämpfer??? - specter (Mittwoch 03.01.2007)
    Welche Lehrer gehen/bleiben?? - Administrator (Montag 03.07.2006)
    Welche Bier sorte?? - Alexander (Samstag 14.01.2006)
    Welche Produkte soll ich kaufen ? - bmwpower58 (Montag 17.12.2007)
    ich weiß jetzt definitiv, welche felgen mein auto bekommt - MB2sport (Sonntag 02.12.2007)
    Welche Helis werden in China gebaut? - janni555 (Mittwoch 04.04.2007)
    Welche Grafikkarte läuft mit Direkt X10? - <S~C>Speedbreaker (Dienstag 19.06.2007)
    Welche Map's mögt ihr - -=DUKE=- (Sonntag 21.08.2005)
    Welche Vor - Nachteile bringt ein Axial 28 im Specter? - Max Merkel (Samstag 22.09.2007)