Richtig Programmieren lernen Tipps

Jeder der sich für ein Pro in C bzw. C++ hält, kennt sicherlich https://www.slideshare.net/olvemaudal/deep-c

Ansonsten gibt es wunderschöne advanced cpp vids im Netz. Z.B. Mike Acton, o.ä.. (Dieser sagt sowiso, dass wenns ans eingemachte geht, er Assembler verwendet). Auch ein schöner Begriff heißt hier: "Know your hardware". In den Talks fallen auch so schöne Sätze wie: "Menschen sind hervorragend in dem Schreiben von schlechter Software."

Back to topic: Python, Java, C#, Haskell, Scala ... sind recht schöne Sprachen um an zu fangen. Wenn man Probleme mit dem Speicher/Geschwindigkeit hat, so liegt es meist nicht an der Sprache, sondern am Programmierer ;). Wer mehr in Hardware-Nähe bzw. Performance geht sollte sich um C/C++ etc. kümmern. Wer umbedingt Aspirin-abhängig werden will, macht halt auch Assembler - ich persönlich halte nicht viel davon. Wer in die Numerik geht kann auch mal in Richtung Matlab/Fortran einen Abstecher machen. In Web-Umfeld ist Javascript sicher nicht verkehrt. Es ist nur wichtig an zu fangen und nie auf zu hören weiter zu lernen und nach einem Besseren selbst zu streben.

Da ich eher aus der Theorie komme, rate ich auch erstmal jedem einen Akzeptor für z.B. Pallindrome etc auf dem Papier zu machen. Meistens muss erst das Gehirn geschult werden, anders zu denken ;).

Zum Thema Speicherzugriff in Java: Es stimmt nicht, dass man in Java keinen zugriff auf malloc hat. sun.misc.unsafe ist hier das Stichwort.
 
Finalspace schrieb:
Aber ich bleibe bei meinem Standpunkt: C ist großartig um programmieren zu lernen und darüber hinaus.
Wem das nicht passt, der nimmt irgendwas anderes wie z.b. Python oder Javascript.

Dazu möchte ich noch etwas schreiben. Denn C ist wirklich gut um viele grundlegende Dinge zu lernen. Ich denke aber wenn man ein wenig aus Spaß privat programmieren möchte, dann schießt man mit C über das Ziel hinaus. Programmieren soll einfach sein, bzw. einfacher werden. Unter anderem deswegen gibt es überhaupt so etwas wie den Raspberry Pi. Der versteht von Haus aus am besten Python, weil es im Vergleich relativ simpel ist, aber es lässt sich schon sehr viel damit anstellen. Die wenigsten hier werden hoch effiziente Programme schreiben, und das wird auch nicht das Hauptziel des Erstellers hier sein. Er möchte ja kein Studium beginnen, in dessen Verlauf er tiefer in das Thema der Algorithmen und die theoretische Informatik usw. eintaucht. Deswegen sollte er sich eine relativ einfache Sprache aussuchen. Viele Dinge lassen sich dann ja auch auf andere Sprachen übertragen. Die Syntax von Java wurde ja in vielen Bereichen von C abgekupfert. Inzwischen gibt es dort ja auch Befehle wie printf usw... und eine objektorientierte Sprache würde ich heute einer "klassischen" Sprache vorziehen.

Such dir also etwas "einfaches" raus.
 
Ich wuerde es so machen, wenn ich quasi nochmal programmieren lernen duerfte:

C -> Assembler -> mehr C -> Hohe OOP Sprache (C++, C#, Java, Python, RUST(?), Kotlin, (Javascript(?)) usw.) -> Funktionale Sprache (Haskell, Clojure, OCaml, Scala ...)
 
Ist euch eigentlich noch nicht aufgefallen, das der OP sich seit seinem Initialpost noch nicht zurückgemeldet hat?
 
Das stimmt nicht, ich vermute aber, dass er seit seinem zweiten Post hier nicht mehr mit liest. :) Aber der Sinn eines Forums ist ja auch, dass spätere Interessenten auch die Infos bekommen.
 
Danke für die Vielen Antworten, es ist sehr interessant was ihr schreibt!
Ich lese schon mit nur ich bin nicht angemeldet.:)
Nur etwas zu mir ich befinde ich im zweiten Jahr Fachinformatiker Anwendungsentwickler meiner Ausbildung.
Ich habe vor ein paar Monaten C# und Java in der Schule gemacht. Nun möchte ich mich auch Privat damit mit beschäftigen und haben mir überlegt mit C# anzufangen!
Also es geht schon in die Berufliche Programmierung ein später.

Nun also man lernt die Grundlagen, danach verändert man Dinge(z.b Schriftfarbe,Werte usw.) und sehen was passiert(veränderungen zu sehen). Und wenn man das alles verstanden hat , schreibt man sich seine eigene Programme?
Natürlich lernt man programmieren nur durch ausprobieren programmieren:)
Jede Meinung ist Willkommen..
 
andy_m4 schrieb:
Interessant ist aber, dass für numerische Berechnungen bevorzugt eine noch ältere Sprache, nämlich Fortran, eingesetzt wird.
Sogar von Intel gibts ein hochoptimierenen Fortran-Compiler.
Gleich vorweg : mein letztes Programm liegt 30 Jahre zurück. Angefangen hatte ich vor 40 Jahren (mit Lochkarten) mit dem damals blutjungen Pascal. In den folgenden Jahren hatte ich dann noch jeweils kurzfristig mit ein paar anderen Sprachen zu tun (unterdessen in interaktiver Form), an die ich mich nicht einmal mehr erinnere, ausser dass Pascal dafür eine sehr gute Vorbereitung gewesen war.

Ich hab mich da in den letzten Tagen vergeblich mit der neuesten Version von Free Pascal abgemüht (https://sourceforge.net/projects/freepascal/?source=typ_redirect) und sie schliesslich wieder abinstalliert. Man findet zwar jede Menge Tutorials zum Programmieren, aber dazu, wie man das Programm installiert, sind zuviele widersprüchliche Anleitungen im Umlauf...
 
Alexis29 schrieb:
Danke für die Vielen Antworten, es ist sehr interessant was ihr schreibt!
Ich lese schon mit nur ich bin nicht angemeldet.:)
Nur etwas zu mir ich befinde ich im zweiten Jahr Fachinformatiker Anwendungsentwickler meiner Ausbildung.
Ich habe vor ein paar Monaten C# und Java in der Schule gemacht. Nun möchte ich mich auch Privat damit mit beschäftigen und haben mir überlegt mit C# anzufangen!
Also es geht schon in die Berufliche Programmierung ein später.

Nun also man lernt die Grundlagen, danach verändert man Dinge(z.b Schriftfarbe,Werte usw.) und sehen was passiert(veränderungen zu sehen). Und wenn man das alles verstanden hat , schreibt man sich seine eigene Programme?
Natürlich lernt man programmieren nur durch ausprobieren programmieren:)
Jede Meinung ist Willkommen..

Ich habe meine Ausbildung zum Anwendungsentwickler bereits seit fast 15 Jahren hinter mir und programmieren lernten wir dort nicht wirklich. Eher wie man Software plant mit Flußdiagrammen, UML, Relationale Datenbanken plus den ganzen wirtschaftlichen Kram.
Wir hatten im 3. Lehrjahr max. 4 Std. programmieren in der Woche was für ne Ausbildung zu nem Entwickler ziemlich lausig war. Es war wichtiger irgendwelche Planspiele in BWL/WL zu machen als was zu programmieren. Ich meine wir hatten ein wenig was mit VB und HTML gemacht, das hat max. für nen Taschenrechner mit A + B = C gereicht - für mehr aber nicht.

Daher kann ich hier nur raten, es ist auf jedenfall keinen Fehler sich damit auch privat auseinander zusetzen!

Casse-noisette schrieb:
Gleich vorweg : mein letztes Programm liegt 30 Jahre zurück. Angefangen hatte ich vor 40 Jahren (mit Lochkarten) mit dem damals blutjungen Pascal. In den folgenden Jahren hatte ich dann noch jeweils kurzfristig mit ein paar anderen Sprachen zu tun (unterdessen in interaktiver Form), an die ich mich nicht einmal mehr erinnere, ausser dass Pascal dafür eine sehr gute Vorbereitung gewesen war.

Ich hab mich da in den letzten Tagen vergeblich mit der neuesten Version von Free Pascal abgemüht (https://sourceforge.net/projects/freepascal/?source=typ_redirect) und sie schliesslich wieder abinstalliert. Man findet zwar jede Menge Tutorials zum Programmieren, aber dazu, wie man das Programm installiert, sind zuviele widersprüchliche Anleitungen im Umlauf...

Ich kenn immernoch jemand der vollkommen alles was er macht in Delphi 7 programmiert und mit FPC Kompiliert, damit er Crossplatform fähig bleibt. Beruflich habe ich mit Delphi teilweise auch noch zu tun, allerdings sind das alles nur Portierungen nach XE10. Privat habe ich Delphi seit dem letzten Release von meinem Mediaplayer Xenorate nicht mehr angefasst. Für mich ist eigentlich nur noch C/C++ relevant und für kleine GUI-Tools reicht mir C#/.NET vollkommen aus.

Der Trend geht allerdings dahin, das alte Delphi-Anwendung entweder komplett entsorgt oder in C++/C#/Java neu geschrieben werden.
 
Zuletzt bearbeitet:
Das ist wohl eine Frage der immer enger werdenden Spezialisierungen : die einen lernen, eine Software zu planen, und es sind dann wohl andere, die sie eincodieren. Aber für eine gute Planung fände ich schon nützlich, auch etwas davon zu verstehen, was danach kommt...

Wie viele Wochenstunden Unterricht waren denn das insgesamt, von denen 4 fürs Programmieren waren ? War vielleicht der Rest zu viel ? Zu unterrichten gibt es ja beim Programmieren nicht allzu viel, der Rest ist dann Praxis.
 
Casse-noisette schrieb:
Das ist wohl eine Frage der immer enger werdenden Spezialisierungen : die einen lernen, eine Software zu planen, und es sind dann wohl andere, die sie eincodieren. Aber für eine gute Planung fände ich schon nützlich, auch etwas davon zu verstehen, was danach kommt...

Wie viele Wochenstunden Unterricht waren denn das insgesamt, von denen 4 fürs Programmieren waren ? War vielleicht der Rest zu viel ? Zu unterrichten gibt es ja beim Programmieren nicht allzu viel, der Rest ist dann Praxis.

Keine Ahnung, hab keinerlei Unterlagen mehr, aber ich mein ich es war Blockunterricht von 7:30 bis mind. 13:00 und bei Mittagsunterricht dann bis 15:00 Uhr. Auch gab es noch zusätzlich zum programmieren nen Hardwarefach, wo im ersten Lehrjahr Grundlagen PC -und Elektrotechnik vermittelt wurde. Was ich aber noch weiß das der Informatiklehrer es nicht leicht hatte, da es zuviele unmotivierte Menschen in der Klasse gab - die weder das Interesse noch Lust auf programmieren hatte. Da hab ich mich immer gefragt, was wollen diese Leute hier, hätten se doch lieber Kaufmann oder sowas gelernt.
 
Ich war mir nicht sicher, ob man bei einer Lehre nicht nur einen Tag pro Woche Unterricht hat und die anderen im Betrieb bei der Arbeit verbringt. Das scheint ja eher eine Schule gewesen zu sein.

Würdest Du, wenn Du heute entscheiden müsstest, eine andere Ausbildung machen mit mehr Programmieren ?
 
Casse-noisette schrieb:
Ich war mir nicht sicher, ob man bei einer Lehre nicht nur einen Tag pro Woche Unterricht hat und die anderen im Betrieb bei der Arbeit verbringt. Das scheint ja eher eine Schule gewesen zu sein.

Würdest Du, wenn Du heute entscheiden müsstest, eine andere Ausbildung machen mit mehr Programmieren ?

Ich würde entweder direkt oder nach der Ausbildung nen Informatik-Studium machen, denn da lernste wirklich was. Vor allem Mathematik und die ganzen Hardware-Grundlagen auf dem die Informatik aufbaut. Kommt allerdings auch drauf an, was man studiert. Wirtschaftsinformatikstudium ist mehr auf BWL/Projektmanagement spezialisiert, während technische Informatik mehr Mathematik hat.
Hardware und Kernkonzepte haben beide.

Blockunterrricht war übrigens bei uns 2 Wochen hintereinander Schule und dann wieder 2 Wochen Betrieb. Aber ich musste auch nach der Berufsschule in der Betrieb :-(

Mein Weg hat leider kein Studium zugelassen, zuviele Härtefalle in der Familie und dazu war ich noch nen fauler Hund dazu. Heute hab ich zwei Kinder und Familie, da ist nix mehr mit Studium. Dafür habe ich halt über 15 Jahre Berufserfahrung...
 
Zurück
Oben