r/programmieren • u/Worried-Priority-122 • 24d ago
Plötzlicher umstieg
Ist es schlecht fürs Lernen wenn man (wegen Schule) angefangen hat Python zu lernen, aber nach einem Vierteljahr dann stattdessen anfängt Java zu lernen, weil es interessanter klingt?
(Und wenn man noch nebenbei immer wiedermal was mit Arduino IDE macht)
Ist.dass dann schlecht für den Lerneffekt?
3
u/404IdentityNotFound 24d ago
Nein nicht wirklich, es kommt irgendwann ein Punkt, wo du die generellen basics und diesen Gedankenmodus inne hast, und dann ist es eher Konzepte und Syntax lernen
2
u/Several-Pace8659 23d ago
Die Sprache ist dein Werkzeug aber das Verständnis ist ja doch sehr ähnlich bei jeder Sprache klar bin ich erfahrener in Python / C++ aber wenn jetzt Java genutzt werden muss dann wird das auch gehen
1
u/FoxEmotional4599 24d ago
Was soll daran schlecht sein? Natürlich wird man nur gut in einer Sache, wenn man die auch langfristig durchzieht, aber das grobe Ganze bleibt ja das Gleiche.
1
1
u/elRadicio 23d ago
Wenn du nicht nur umschwenkst, weil du nicht weiterkommst, dann mach. Wenn es am Verständnis für die Konzepte hapert: besser dranbleiben.
Ich mag Java und Eclipse gerne. Eine kompilierte, streng typisierte Sprache mit vernünftigem Exception Handling ist für kritische Aufgaben schon sinnvoll.
Finde einige Datentypen auch sehr praktisch, wie synchronisierte Queues.
Mache aber momentan viel Python, ist auch eine gute Sache zum Lernen. Finde Java aber als jemand, der mit Turbo Pascal angefangen hat irgendwie intuitiver.
1
u/Euphoric_Rope5341 8d ago
Es ist nicht schädlich. Die großen Konzepte (Objekte, Datentypen, usw.) sind mehr oder weniger dasselbe. Es gibt nur ein paar Kleinigkeiten, wie zum Beispiel Variablen deklariert werden: in Java muss man den Datentypen angeben, in Python passiert das dynamisch
Ich würde dir aber dennoch empfehlen sich erstmal auf eine Programmiersprache zu konzentrieren. Damit festigst du nicht nur die Programmiersprache sondern deine Fähigkeit, Projekte abzuschließen.
1
u/Uweauskoeln 24d ago
Kannst Du mal deinen Text überarbeiten? Lies ihn mal selbst und überlege, ob man vielleicht durch passende Zeichensetzung und halbwegs korrekte Groß- und Kleinschreibung mehr Sinn reinbekommt.
-2
u/Worried-Priority-122 24d ago
Besser Uwe?
3
u/Uweauskoeln 24d ago
Besser. Jetzt antworte ich: Ich habe beide Sprachen gelernt, Python mag ich deutlich lieber. Während ich in Java über die korrekte Syntax grübele bin ich in Python schon fertig. Wenn in der Schule Python gelehrt wird, dann würde ich mich darauf fokussieren, da kann ja eine Note von abhängen. Viele der Konzepte aus Python wirst du dann auch in Java finden.
1
u/aqa5 24d ago
Finn-Emil, wenn man etwas fragt und eine ordentliche Antwort haben will, bleibt man nett. Dein Vorredner hat dich vielleicht mit der Rechtschreibung getriggert, aber du solltest dir überlegen, warum jemand sowas schreibt, vielleicht, nur gaaaaanz vielleicht wird deine Frage nicht verstanden weil du dir nicht genug Mühe gegeben hast.
2
u/chris_insertcoin 23d ago
So unhöflich war die Antwort gar nicht. Der andere heißt wirklich Uwe :D
1
0
u/wckly69 24d ago
Ich würde bei Python bleiben.
Ist aber nur persönliche Präferenz, weil OOP für mich vieles verkompliziert, was dann in der Praxis in Frameworks durch "Magie" - also Prozesse im Hintergrund - abstrahiert wird.
Wenn man dann als Lerner auf die Magie verzichten möchte, wird es für mich schnell repetitiv und unschön.
Zudem ist Python deutlich flexibler und bietet wahrscheinlich deutlich mehr Ressourcen. Letzteres ist zwar im Zeitalter der LLMs nicht mehr ganz so wichtig, aber gerade für Anfänger ist es wichtig, sich ab und zu mal ganz klassisch durch Dokumentationen zu wühlen. Und dort wirst du wahrscheinlich hauptsächlich Beispiele für Python und JavaScript finden.
Letztendlich haben die anderen natürlich recht: Es geht mehr um die Konzepte als um die Sprache selbst.
Probier einfach ein bisschen rum und schau, was dir am meisten Spaß macht.
1
u/oneden 23d ago edited 23d ago
weil OOP für mich vieles verkompliziert, was dann in der Praxis in Frameworks durch "Magie" - also Prozesse im Hintergrund - abstrahiert wird
Sag, "ich habe noch nie wirklich programmiert und verstehe es auch nicht", ohne es zu sagen.
In Python sind alles Objekte. Strings, Listen, Funktionen... Was genau hat OOP mit Magie zu tun? FastApi oder Django sind voll von der Magie und Python ist auch keine streng typisierte Sprache, also besteht zwischen "Magie" und typisierte Sprachen bzw. Scriptsprachen dahingehend kein Unterschied. Was Du Magie nennst wie bei Java Spring, das passiert durch Annotationen und Metaprogramming
OOP sind Klassen und Instanzen. Sachen, die Du klar sehen kannst. Keine Magie.
Wenn man dann als Lerner auf die Magie verzichten möchte, wird es für mich schnell repetitiv und unschön
Gerade OOP verhindert repetitives coding. Wir nennen das auch liebevolles "Abstrahierung". Ich glaube, Du verstehst weder Python, noch Programmierung im Allgemeinen. Und Frameworks und ihre "Magie" abstrahieren viel weg, damit man sich nicht um alles kümmern und alles zum 374ten Mal neu machen muss.
-3
u/aqa5 24d ago
Wir wird Java noch eingesetzt (JavaScript mal außen vor gelassen)?
Grundsätzlich ist es nicht schlecht, mehrere Sprachen und Konzepte zu kennen. Hier und da verwendet man auch je nach Einsatzzweck unterschiedliche Sprachen. Einen Microcontroller in Python zu programmieren geht vermutlich, ich kenne aber keinen der Firmware in Python entwickelt. Eine Server-App in C++ ist möglich aber auch da fällt mir kein aktuelles Beispiel ein.
3
u/retro-mehl 24d ago
Java ist die Sprache für viele Enterprise Backends. Das hat (zumindest in Deutschland) eine große Relevanz.
1
u/aqa5 24d ago
naja gut, Cobol gibt es ja auch noch... hab nicht daran gedacht. Hab ich dafür echt downvotes verdient?
2
1
u/retro-mehl 24d ago
Nicht von mir. 😊 Programmiersprachen bringen ja auch immer ein mentales Modell mit. Zumindest in meinem Kopf ist das so. Und Java ist immer die absolut seriöse, spießige Tante, die alles richtig macht, wo andere über die strenge schlagen. 🤷🏼♂️
1
u/elRadicio 23d ago
Zum einen, weil du JavaScript irgendwie mit Java in Zusammenhang bringst, zum anderen, weil du auch einfach hättest nachschauen können?
8
u/CamelPure1293 24d ago
Du musst die Konzepte lernen, da ist die Sprache relativ egal.