Ich möchte Programmieren lernen..

Jokergame

Newbie
Registriert
Apr. 2016
Beiträge
2
Hallo zusammen,

Ich bin ganz neu hier und möchte gerne mit dem Programmieren beginnen. Für den Fall, dass es relevant ist: Ich bin 19 Jahre alt :D.

Zuerst möchte ich kurz meine Ziele darlegen:

Gerne möchte ich gut programmieren lernen um dies auch später in meinem Job machen zu können. Ich strebe ein Informatik-Studium an und habe vor mich allgemein im Informatik-Bereich gut auszukennen. Bis jetzt habe ich mir das Buch "Grundlagen der Informatik" angeschafft und erhoffe mir davon, viel lernen zu können. Was haltet ihr von dem Buch?

Mir wurden bereits viele Programmiersprachen empfohlen, von Python bis hin zu Java und ich habe ehrlich gesagt keinen Plan, wo und mit welcher Sprache ich anfangen soll. Habt ihr eine gute Buchempfehlung für mich? Vor Allem aber, wie geht es weiter, wenn man ein solches Buch durchgearbeitet hat?

Die letzte Frage ist: Wo lerne ich alles über Informatik allgemein, oder eben über das Programmieren, aus Büchern? Aus dem Internet?

Über ausführliche Antworten würde ich mich sehr freuen. Danke im Voraus.

Ganz liebe Grüsse

Jokergame
 
Wenn du ein Informatikstudium anfängst wird alles von vorne an erklärt. Es schadet meiner Meinung nach zwar nicht sich vorher schon damit zu beschäftigen, doch einen Vorsprung wird es dir nicht wirklich geben.

Als erstes würde ich mit etwas HTML anfangen, da hast du schnelle Ergebnisse und verstehst ganz simple Grundlagen. Mehr als ein paar stunden würde ich da aber auch nicht reininvestieren.
 
C# und WPF, ist leicht zu verstehen und du hast gleich was das man sehen und einfach benutzen kann.

Im Studium fängt man zwar bei 0 an, aber wenn mans schon vorher einigermaßen kann hat man weniger Stress und muss sich nicht so lange in die unterschiedlichen Sprachen einarbeiten.

EDIT: Vorwissen ermöglicht es auch die Vorlesungen einfach auszulassen.
 
Zuletzt bearbeitet:
C# ist unter Windows eigentlich die Standardsprache. Python ist besonders unter Linux ideal, um schnell kleine Programme zu basteln.

Wenn die Grundlagen sitzen (würde dafür schon einiges an Zeit einplanen - keine Ahnung, wie es aussieht, wenn man mit guten Materialien lernt, aber ich habe damals tatsächlich ziemlich lange gebraucht, um einfache Dinge wie Polymorphie zu verstehen), würde ich aber auch dringend dazu raten, über den Tellerrand zu schauen - C, Haskell, Rust, C++, you name it... - nicht unbedingt, um die Sprachen dann auch wirklich intensiv einzusetzen, sondern um die Konzepte zu begreifen. Im Falle von C wäre das in erster Linie Low-Level-Programmierung (aka 'wie kann ich hier virtuelle Funktionen umsetzen?'), bei Haskell dann eher, wie man mit Rekursion und unveränderbaren Objekten umgeht ('ich will die Summe der Elemente in einer Liste berechnen, wie geht das?').

Was das Studium angeht - man merkt spätestens bei Projektarbeiten, wer Ahnung von seinem Handwerk hat und wer nicht. Ich glaube nicht, dass man innerhalb eines Semesters von einem absoluten Newbie zu einem guten Programmierer wird, aber das wichtigste beim Programmieren ist es, es auch zu tun - learning by doing und dabei auch gleichzeitig lernen, wie man seine Probleme selbstständig löst. Denn die wird man immer haben, wenn man sich mit etwas Neuem beschäftigt.
 
Zuletzt bearbeitet:
Schau dir mal die Trainings von video2brain an. Die fand ich imme sehr gut
 
Es kommt natürlich darauf an was du machen willst. Wenn du normale Windows Applikationen machen möchtest empfiehlt sich C# natürlich sehr.
Visual Studio ist eine großartige IDE und du kannst sehr einfach Benutzeroberflächen machen (egal ob WinForms oder WPF). Da C# "managed" ist, werden dir einige lästige Dinge abgenommen wie z.B eine manuelle Speicherverwaltung.

C# ist generell einsteigerfreundlicher als z.B C++.

Wenn du dann später vielleicht mal Java machen möchtest ist der Umstieg auch nicht sonderlich schwer, da die Sprachen syntaktisch und konzeptionell einander sehr ähneln.

Wenn du allerdings eher so webbasierte Sachen machen möchtest, empfehlen sich HTML, CSS, Javascript, PHP
 
Ich rate auch zu Python. Denn im Vergleich zu Java und anderen Sprachen der C-Familie brauchst du viel weniger boiler-plate Code, sprich Code, der nicht der eigentlichen Problemlösung dient, sondern allein aus rein "organisatorischen" Gründen bei diesen Sprachen gebraucht wird. Bei Python kann man sich hingegen direkt um die eigentlichen Konzepte kümmern ohne viel drumherum zu brauchen. Natürlich sollte man später auch noch einige klassische Sprachen wie Assembler, C/C++, Java/C# und Lisp/Haskell kennenlernen, aber um Konzepte zu veranschaulichen eignet sich eine Sprache mit möglichst wenig "Ablenkung" am besten.
 
Danke für die vielen Antworten. :D
Ergänzung ()

NJay schrieb:
Wenn du ein Informatikstudium anfängst wird alles von vorne an erklärt. Es schadet meiner Meinung nach zwar nicht sich vorher schon damit zu beschäftigen, doch einen Vorsprung wird es dir nicht wirklich geben.

Als erstes würde ich mit etwas HTML anfangen, da hast du schnelle Ergebnisse und verstehst ganz simple Grundlagen. Mehr als ein paar stunden würde ich da aber auch nicht reininvestieren.

Nun ja, das Studium wird erst in ein paar Jahren sein, von dem her denke ich, dass ich noch viel lernen kann bis dahin.
Ergänzung ()

VikingGe schrieb:
C# ist unter Windows eigentlich die Standardsprache. Python ist besonders unter Linux ideal, um schnell kleine Programme zu basteln.

Wenn die Grundlagen sitzen (würde dafür schon einiges an Zeit einplanen - keine Ahnung, wie es aussieht, wenn man mit guten Materialien lernt, aber ich habe damals tatsächlich ziemlich lange gebraucht, um einfache Dinge wie Polymorphie zu verstehen), würde ich aber auch dringend dazu raten, über den Tellerrand zu schauen - C, Haskell, Rust, C++, you name it... - nicht unbedingt, um die Sprachen dann auch wirklich intensiv einzusetzen, sondern um die Konzepte zu begreifen. Im Falle von C wäre das in erster Linie Low-Level-Programmierung (aka 'wie kann ich hier virtuelle Funktionen umsetzen?'), bei Haskell dann eher, wie man mit Rekursion und unveränderbaren Objekten umgeht ('ich will die Summe der Elemente in einer Liste berechnen, wie geht das?').

Was das Studium angeht - man merkt spätestens bei Projektarbeiten, wer Ahnung von seinem Handwerk hat und wer nicht. Ich glaube nicht, dass man innerhalb eines Semesters von einem absoluten Newbie zu einem guten Programmierer wird, aber das wichtigste beim Programmieren ist es, es auch zu tun - learning by doing und dabei auch gleichzeitig lernen, wie man seine Probleme selbstständig löst. Denn die wird man immer haben, wenn man sich mit etwas Neuem beschäftigt.

Danke für deine ausführliche Antwort, aber ich habe bis zum Studium noch weitaus mehr als ein Semester zeit :D.
Ergänzung ()

yummycandy schrieb:
Noch ein paar Lektüretipps:

https://www.rheinwerk-verlag.de/ope...du mir ein gutes Buch zu Python empfehlen? :D
 
Zuletzt bearbeitet:
Es ist absolut egal welche Sprache du verwendest. Lern die Grundkonstrukte.
  • for/while
  • if/else
  • arthemtic
  • string manipulation
  • method/functions

Dazu tut es für den Anfang auch Javascript zu verwende, dazu brauchst nenn Browser und einen Texteditor.

Du kannst folgendes file zum Starten verwenden. Einfach nehmen und als z.B.: lernen.html abspeichern.
Danach mit einem Texteditor öffnen und im Browser. Programmieren -> Browser reload und Ergebnis betrachten.
Es beinhaltet 4 funktionen zum Implementieren mit einer Aufgabenstellung. Zusätzlich die methoden append und clear. Die erste fügt eine Zeile in das div ein (Inhalt der Seite) und clear löscht ihn wieder. Dich interessieren für den Start nur die Methoden. Bei fragen einfach melden ;)
Code:
<html>
<head></head>
<body>
<div id="out"></div>
<script>
    append("start");
    calc(1, 1, 'add');
    printStars(3);
    printChristmasTree(5);
    isLeapYear(1846);
    append("finished");

    /**
     * Returns the result depending on the type
     * @param number1
     * @param number2
     * @param type  'add', 'sub', 'mult', 'div'
     */
    function calc(number1, number2, type) {
        // implement me
    }

    /**
     * Prints amount rows the first row contains 1 star the second 2
     * f.e. 3
     * *
     * **
     * ***
     * @param amount
     */
    function printStars(amount) {
        // implement me
    }

    /**
     *  Prints a christmas tree with the passed height
     *  f.e. 4
     *      *
     *     ***
     *    *****
     *   *******
     * @param height
     */
    function printChristmasTree(height) {
        // implement me
    }

    /**
     * returns true if the given year is a leap year
     * see --> https://de.wikipedia.org/wiki/Schaltjahr#Gregorianischer_Kalender
     * @param year
     */
    function isLeapYear(year) {
        // implement me
    }

    function append(text) {
        document.getElementById("out").innerHTML += text + "<br>";
    }

    function clear() {
        document.getElementById("out").innerHTML = "";
    }
</script>
</body>
</html>
 
Mal Abseits der verschiedenen Programmiersprachen - meiner Erfahrung nach hat ein Informatik-Studium ziemlich wenig mit der Programmierung mit einer Hochsprache zu tun, einen nennenswerten Vorteil würde ich mir davon an deiner Stelle nicht erhoffen.
 
Zurück
Oben