Mit dem Programmieren Anfangen

  • Ersteller Ersteller Sortepermand
  • Erstellt am Erstellt am
S

Sortepermand

Gast
Hallo Zusammen,

Ich würde gerne mit dem Programmieren beginnen. Ich denke ich werde mit Java anfange zu Programmieren da diese am weitesten verbreitet ist,so denke ich. Oder würde Ihr einem Anfänger eine andere Programmiersprache empfehlen? Welche Bücher könnt ihr mir für den Einstieg in die Thematik Programmieren empfehlen, wo man auch selbst Aufgaben gestellt bekommt oder zu mindest etwas aus dem Buch nach Programmieren soll/kann, damit man die vermittelte Theorie aus dem Buch direkt in die Praxis umsetzen und dann eventuell auch noch besser verstehen und nachvollziehen kann.

Für die Programmiersprache Java habe ich mir mal folgendes Buch rausgesucht:

https://www.amazon.de/Java-auch-ein..._rd_t=40701&psc=1&refRID=5AXQW434V3DJGREHE7BN

Ist das Buch gut für einen Anfänger und sind da auch Aufgaben drin, die man dann nach programmieren soll/kann? Oder Aufgaben wo man mit Hilfe des Buches was Programmieren soll um die Vermittelte Theorie noch besser zu festigen?
Für weitere Buch Vorschläge bin ich jederzeit offen.

Danke schon mal im Vorraus

VG Sortepermand:)
 
Hi,

Suchfunktion und Sticky-Threads nutzen! Das Thema gibt es zur Genüge! Das dürfte auch gleichzeitig die wichtigste Empfehlung sein: Eigeninitiative und Informationen selbst beschaffen!

VG,
Mad
 
  • Gefällt mir
Reaktionen: dracki, Herr Melone, hroessler und eine weitere Person
Ich habe selbst mit diesem Buch mit Java begonnen. Was aber wichtiger ist als ein Buch, ist eine Aufgabe oder ein Ziel.
Ohne etwas an dem du selbst merkst dass du etwas geschafft hast bzw. wie gut es ist wirst du dich kaum motivieren können bzw. wissen ob du es kannst.

Der Vorteil an Java ist auch sein größter Nachteil: Es wurde praktisch schon alles in Java programmiert und es existiert alles als Opensourcebibliothek.
Man muss heute in Java praktisch nur noch recht große Blöcke zusammensetzen und erhält fertige stabile Anwendungen - perfekt für die Industrie. Nur man lernt damit kaum das eigentliche programmieren. Implementierung einfacher Algorithmen, Gedanken über Komplexität - all diese Gedanken sind meist unnötig da Bibliotheken fast immer wirklich ausgezeichnet sind (zumindest immer besser als dass was ein Durchschnittsprogrammierer abliefern würde wenn er versucht das Rad neu zu erfinden).
Und das Rad neu erfinden zu wollen ist aus meiner Sicht eine der schlimmsten Angewohnheiten die ein Programmierer haben kann.
 
dermoritz schrieb:
Und das Rat neu erfinden zu wollen ist aus meiner Sicht eine der schlimmsten Angewohnheiten die ein Programmierer haben kann.
Gleichzeitig ist es aber auch eine der besten, da wir so immer bessere Lösungen bekommen. Wo kämen wir hin, wenn wir z.B. als Programmiersprache bei Fortran stehen geblieben wären.
Daher muss man hier differenzieren, statt immer nur den selben Spruch loszulassen: Gibt es eine Implementierung und reicht diese für meine Zwecke -> benutzen statt neu programmieren. Gibt es eine Implementierung und diese reicht nicht -> schauen was man besser machen kann. Hier können die verschiedensten Aspekte interessant sein: Komlexität, Speicherverbrauch, Cachefreundlichkeit, Flexibilität, ...

Nichts spricht dagegen gewöhnliche Datenstrukturen selbst zu implementieren und dann z.B. mit der vorgegebenen Implementierung zur vergleichen.
 
Eigentlich ist es gar nicht so wichtig, Java zu nehmen, weil es die verbreitetste Programmiersprache ist. Tatsächlich ist es so, dass es verschiedene Konzepte in der Programmierung gibt, welche zu unterschiedlichen Anteilen in nahezu allen Programmiersprachen vertreten sind.

Das heißt, wenn du jetzt statt Java z.B. mit Python anfängst, kannst du vieles, was du bisher gelernt hast, auch in Java wiederverwenden und fängst nicht bei 0 an. Die Syntax und die Umsetzung ist natürlich dann nicht 1zu1, dazu sind sie schon unterschiedlich genug, aber man wird trotzdem vieles wiedererkennen.

Daher ist es immer wichtig, nicht nur einfach eine Programmiersprache zu lernen, sondern die grundsätzliche Denkweise, die hinter den Problemlösungsansätzen steckt, die man auf diesem Weg lernt, zu verstehen.

Aber für den Anfang bietet Java wirklich sehr viel. Ist aber nicht unbedingt der leichteste Einstieg, wenn man bei 0 anfängt.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: gravitas und isiprimax
Erstmal allen hier vielen dank für die Antworten hier. Bei meiner Recherche wie man mit JAva Programmieren lernt bin ich auf folgende 2 Online-Kurse gestoßen:

https://www.udemy.com/programmieren-lernen-mit-java-ein-kurs-fur-einsteiger/

https://panjutorials.de/tutorials/der-ultimative-java-kurs/

Jetzt stellt sich mir natürlich die Frage,welcher der Beiden Kurse ich nehmen sollte bzw ob diese Empfehlenswert sind um Java als Anfänger ohne Vorkenntnisse zu erlernen?

Hat jemand schon Erfahrung mit Solchen Anfängerkursen machen können bzw würdet ihr mir solche Kurse empfehlen?
 
Anstatt Geld für sowas auszugeben, würde ich an deiner Stelle mal probieren, wie weit du mit dem von @rotzdiekuh genannten kostenlosen (und übrigens sehr guten und sehr umfassenden) Online Buch http://openbook.rheinwerk-verlag.de/javainsel/ kommst. Oder das Geld für die gedruckte Ausgabe ausgeben, dann hast du es immer auch offline parat, wenn du es brauchst.

Auf Youtube solltest du auch jede Menge Java Tutorials finden.
 
Ich habe mit C# in der Berufsschule angefangen. Dazu gibt es auch zahlreiche Bücher mit Tipps, Erklärungen und Testaufgaben mit Lösungen.
Gut fand ich vorallem "Schrödinger programmiert C#"

https://www.amazon.de/Schrödinger-p...0&sr=8-1&keywords=schrödinger+programmiert+c#

Der Einstieg in Java ist eigentlich auch relativ leicht von daher ebenfalls empfehlenswert. Damit habei ch auf dem Gymnasium angefangen, war also meine "erste" Programmiersprache.
Zu etlichen Programmiersprachen habe ich auch Ebooks, falls du Interesse hast kannst du mich gerne mal anschreiben.
 
Sortepermand schrieb:
Oder würde Ihr einem Anfänger eine andere Programmiersprache empfehlen?
Auf jeden Fall ;)

Ich finde, Java macht keinen Spaß und ist für Anfänger unheimlich komplex und erschlägt einen, weil man nicht weiss, was im ganzen Java-Ökosystem wichtig ist für einen und was nicht.

Mein (heute mal etwas unorthodoxer) Vorschlag als Python-Kontrastprogramm:
Viel Erfolg und vor allem Spaß. Wenn etwas am Anfang keinen Spaß macht, ist es meist schon eine Totgeburt.
 
Zuletzt bearbeitet:
Na wenn das so ist, dann kann ich hier als Vorschlag auch Racket reinwerfen.

Zum Einstieg dann gleich ein simples Tutorial:
https://docs.racket-lang.org/quick/index.html

Oder, weil heise.de gerade passend auch ein Artikel dazu hat: Processing
https://www.heise.de/make/artikel/Processing-Programmieren-fuer-Anfaenger-4106608.html
Basiert auf Java, ist einfach und hat seine Stärken im Grafikbereich. Ist also auch gleich was fürs Auge. Damit so ein wenig vergleichbar, was da im Racket-Anfangstutorial gemacht wird.
 
Ich würde zuerst fragen was du überhaupt programmieren möchtest?
Programmiersprachen sind Werkzeuge. Es gibt kein besser oder schlechter. Es kommt immer drauf an, was man überhaupt machen möchte.
Ohne Ziel wirst du sowieso nach ein paar Tagen/Wochen das Handtuch werfen. Du lernst zwar die ganzen Funktionen und Möglichkeiten, weil sie dich aber nicht direkt weiterbringen wirst du schnell das Interesse verlieren.

Die Frage sollte also nicht lauten: "Wie lerne ich Säge und Hammer zu bedienen" sondern "Wie baue ich ein Baumhaus".
 
  • Gefällt mir
Reaktionen: Yumix, BAGZZlash, Madman1209 und eine weitere Person
Sparta8 schrieb:
Ich würde zuerst fragen was du überhaupt programmieren möchtest?
Programmiersprachen sind Werkzeuge. Es gibt kein besser oder schlechter. Es kommt immer drauf an, was man überhaupt machen möchte.
Ohne Ziel wirst du sowieso nach ein paar Tagen/Wochen das Handtuch werfen. Du lernst zwar die ganzen Funktionen und Möglichkeiten, weil sie dich aber nicht direkt weiterbringen wirst du schnell das Interesse verlieren.
Kann man pauschal so nicht sagen. Ich hatte damals generell Interesse am programmieren und hab so ein wenig mit den Sprachen rumgespielt. Konkrete Probleme angehen kam erst danach. Quasi nachdem man wusste, was so prinzipiell möglich ist.
 
Hi,

"prinzipiell möglich" ist alles. Sparta8 hat völlig recht: wer nur einen Hammer hat sieht in allem einen Nagel. Man sollte flexibel bleiben und das Werkzeug wählen, das passt. Auch bei einer Übung gibt es eine konkrete Aufgabenstellung. Zu programmieren nur um zu programmieren ist wie reden nur um zu reden - überflüssig.

VG,
Mad
 
Zurück
Oben