1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Was eignet sich mehr zum Einstieg? C oder C#?

Discussion in 'Programmieren' started by Potchama, Aug 31, 2016.

Thread Status:
Not open for further replies.
  1. Potchama

    Potchama Byte

    Guten Abend (oder Nacht),

    ich wollte die letzten 1 1/2 Wochen Ferien, die mir noch bleiben, mal nutzen, um mir eine Programmiersprache näher anzusehen. Nun ist es so, dass ich bereits vor einigen Monaten dieses Buch zu C gekauft habe und die ersten paar Kapitel auch abgearbeitet habe. Wie gesagt, ist bereits einige Monate her und so kann ich mich nur noch an Teile erinnern. Deswegen habe ich nun in den letzten Stunden darüber nachgedacht, vielleicht mit einer anderen Sprache neu anzufangen. Mein Blick fiel hierbei auf C#, welches im Gegensatz zu C noch objektorientiert sein soll.
    Was mich aber nun doch in's Wanken geraten lässt, ist die Tatsache, dass ich nach C wohl einen leichteren C++ Einstieg hätte, weil es ja eine Erweiterung von C ist.
    Nun fragt ihr euch möglicherweise, warum ich unbedingt einen leichtern Einstieg in C++ haben möchte. Da ich vorhabe, später einen Beruf irgendwo im IT-Bereich (wahrscheinlich Softwareentwickler, bin mir noch recht unsicher) auszuüben, möchte ich mir den Start so leicht wie möglich gestalten. Weil ich gelesen habe, dass C++ wohl häufig in einem Informatik-Studium durch genommen wird und allgemein sehr wichtig ist, wäre es perfekt, die Sprache im Voraus zu können.

    Ansonsten noch eine Frage, die nur noch bedingt mit dem Thema zu tun hat: Ich komme nächstes Jahr in die 10. Klasse eines Gymnasiums in Bayern. So, wie ich das mitbekommen habe, steht wohl am Ende des Jahres ein Praktikum an. (genauere Details weiß ich auch noch nicht) Kennt sich da jemand in der Softwareentwicklungsbranche aus? Wie viel Vorwissen in einer Sprache wird von einem Schüler erwartet? Oder gibt es auch Praktika, die bei Schülern von 0 anfangen? Per Suchmaschine habe ich spontan leider nur Praktika für Studenten gefunden.

    PS: Vergebt mir irgendwelches Halbwissen im Post. Bin ja noch ein Laie. :p
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Nun, wenn man das Programmieren lernen will, ist die Sprache fast egal. Besser noch: um so weniger die Sprache kann, desto mehr konzentriert man sich auf die grundlegende Logik, die hinter einem zu lösenden Problem steckt. Diese Logik ist das eigentliche Programmieren, die Sprache nur Mittel zum Zweck. Zudem solltest du am Anfang die Finger von allen komplexen IDEs - https://de.wikipedia.org/wiki/Integrierte_Entwicklungsumgebung lassen, die lenken dich nur ab. Ein Editor und ein Compiler reichen für die ersten Zeilen völlig aus.

    In jeder Firma gibt es andere Vorlieben bzgl. der Programmiersprache bzw. bestehende Projekte müssen weitergeplegt werden. Da kann einem auch schon mal eine Sprache über den Weg laufen, die heute kaum noch einer kennt. Sich also festzulegen, macht kaum Sinn. Lerne Programmieren und keine Programmiersprache, dann kommst du überall zurecht.
     
  3. VB-Coder

    VB-Coder Megabyte

    Ich nehme es vorweg. Von deinen drei Optionen ist C die erste Wahl.

    C# ist eine .NET-Framework abhängige Sprache. Das heisst: beim Nutzer muss letztenendes immer das MS .NET-Framework oder unter einem anderen OS (Linux, Mac-OS etc) eine entsprechende NET Umgebung vorhanden sein. Der Vorteil von C# sind die deutlich vereinfachten Anforderungen. In C# sind viele Funktionen schon vorgefertigt, die man einfach nur noch aufrufen muss. Wohin gegen man selbige Funktionen unter C und C++ erst selbst schreiben muss. C# ist also ehr der Baukasten, den man nur noch zusammen setzen muss. Wohin gegen C und C++ die Sprachen sind in denen man sich erst einmal das Fundament aufbauen muss. Was aber wiederrum den Vorteil hat, das diese beiden Sprachen viel flexibler sind und auch viel mehr Möglichkeiten bieten. Gerade auch in Sachen System- und Harwarenaher Programmierung. C++ ist die Sprache, welche auf C aufbaut. Sprich alles was unter C funktioniert, wird auch unter C++ funktionieren. Wobei C++ sehr viele Möglichkeiten bietet, die C verwährt bleiben. Kurz um: wenn du C verstanden hast, kannst du dich mit C++ weiterbilden. Ich würde jedoch nicht gleich mit C++ anfangen, da die Sprache für einen Anfänger ohne irgendwelche Vorkenntnisse einfach zu komplex ist und dadurch oft zu Fehlern und Verzweifelung führt.

    Eine weitere Alternative wäre , gerade in der heutigen Zeit JAVA. Denn Java ist auf Grund der ganzen Entwicklung in Sachen Smartphone, Smarthome etc. wieder sehr stark in den Fokus der Firmen gerückt. Wobei ich nicht sagen will, dass diese Entwicklungen nicht auch in C/C++ erfolgen, sondern lediglich, das JAVA hierdurch wieder enorm an Bedeutung gewonnen hat.

    EDIT: und noch etwas... Objektorientierte Programmiersprache hin oder her, das spielt für dich jetzt erstmal garkeine Rolle. Nehmen wir C .... C ist nicht Objektorientiert ! - Jetzt kommt das ABER : Man kann mit C trotzdem Objektorientiert Programmieren. ....Nimm das jetzt einfach mal als Info so hin. Alles andere würde jetzt in dem Stadium viel zu weit führen
     
  4. root

    root Megabyte

    @kalweit und @VB-Coder haben eigentlich schon alles wichtige gesagt, deshalb hier nur ein paar Ergänzungen:
    Um diesen Punkt zu konkretisieren: Die meisten Programmiersprachen bauen zum Großteil auf den selben Prinzipien auf. Lerne deshalb am Besten bei jeder Sprache die Prinzipien, die dahinter stehen und wie sie dort umgesetzt sind (z.B. Speicherverwaltung mit Heap und Stack bei C, Objektorientierung bei C++/C#/Java etc.). Wenn du das verinnerlicht hast, ist das Lernen einer neuen Sprache oft nicht viel mehr als das Anwenden von bereits Gelerntem auf eine neue Notation. (Ausgenommen natürlich Sprachen wie Haskell oder Prolog, aber um die geht es hier nicht.)
    Java ist zwar nach meiner Erfahrung während des Studiums gefragt, allerdings würde ich das niemandem in seiner Freizeit zumuten wollen. Bei C dürfte der TO für den Anfang wahrscheinlich gut aufgehoben sein.
     
    Last edited: Sep 2, 2016
  5. Potchama

    Potchama Byte

    Alles klar, danke für die Antworten. Dann werde ich wohl einfach mit C weitermachen. :)
     
Thread Status:
Not open for further replies.

Share This Page