Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hallo, ich bin gerade bei der Grafikprogrammierung AWT und Swing, später noch JavaFX.
Dabei lerne ich gerade wie man einen Texteditor erstellt u.s.w.
Einfaches Fenster mit Button, Labels, Optionbutton u.s.w. sind alles klar, nur wenn es tiefer geht, wie z.b. das öffnen von Dateipfaden mit Filter u.s.w.
sind unheimlich viele klassen und deren Methoden einzubinden. Der Punkt ist sehr schwierig, weil es in Java so viele Klassen mit deren Methoden gibt, die man sich nicht alle merken kann.
Jetzt zur Frage und deswegen auch hier in dem Unterforum: Gibt es Eselsbrücken um diese Klassen die man benötigt zu merken?
Jetzt stelle ich mir vor, ich brauche einen Filter, der die Dateien Filtert (macht man mit FileFilter), jetzt stellt mir die Frage wie ich prinzipiell an die Sache heran gehe.
Im Lehrheft wird dann auch nach solchen dingen gefragt, nur man kann es doch nicht auswendig lernen oder doch?
Wie ist das in der Arbeitswelt, kann man Hilfsdateien (die man selbst erstellt) zur Hilfe nehmen?
Gibt es dafür Bücher etc. wo man Übungen machen kann, es gibt auch Bücher wo Übungsaufgaben drin stehen.
Was könnt ihr mir zu meinen "Problem" empfehlen und wie man an die ganze Sache heran geht?
Es gibt da einen ganz einfachen Ansatz, der für mich sehr oft funktioniert. Übersetze, das was du tun willst, ins englische und suche dir eine Klasse die so heißt. Meistens entspricht die übergeordnete Kategorie dem Package. Das funktioniert erstaunlich oft, wenn du nicht gerade nach Yoda-Speak übersetzt. Etwas Übung macht den Rest. Das Prinzip lässt sich auch auf andere Programmiersprachen anwenden. Dies ist übrigends einer der Gründe, warum ich es hasse. wenn jemand versucht in deutsch zu programmieren.
Damit meinte ich, ich habe z.B. Java Dateien erstellt, die bestimmte Beispiele bringen wie ein Fenster erstellen etc.
Oder auch andere Sachen, so wie ein Prototyp. Das habe ich schon in Python gemacht. Wenn ich etwas in Python erstellen will und weiß etwas nicht mehr, dann mache ich bestimmte Datei auf und da ist mein Prototyp, geht schneller als mich kurz ins www einzuwählen.
Damit meinte ich, ich habe z.B. Java Dateien erstellt, die bestimmte Beispiele bringen wie ein Fenster erstellen etc.
Oder auch andere Sachen, so wie ein Prototyp. Das habe ich schon in Python gemacht. Wenn ich etwas in Python erstellen will und weiß etwas nicht mehr, dann mache ich bestimmte Datei auf und da ist mein Prototyp, geht schneller als mich kurz ins www einzuwählen.
So etwas ist einfach schnell veraltet, der Aufwand lohnt nicht. Der Browser ist ja auch immer offen, dass jemand mit Java irgendwas mit GUI entwickelt ist ja eh die Ausnahme. Gewöhne die an in englisch zu googeln, so erhältst die Treffer von Fachleuten. Die Namen merkst du dir mit der Zeit. Alles was in deutsch ist ist meist zweitklassig und nur vom Orginal übersetzt. Oft wird dann auch etwas wegelassen, was der Übersetzer als unwichtig ansieht.
wenn du klassen importierst in einer IDE kannst du auch zu deren deklaration springen und da steht meistens irgendwas drin was man nicht kapiert...
es ist auch der sinn von schnittstellen dass du nicht weist was es exakt intern macht, du schaust welcher methoden name passt zu dem ding was du willst
es gibt auch javadocs dh das sind kommentare die deine IDE auflöst diese gibts normalerweise für jede methode und bei größeren libs sind da auch oft beispiele dabei damit kannst du dich gut durchhangeln
deswegen sind auch klare methoden namen wichtig und eine IDE wie eclipse, intellij und was es sonst nicht noch alles gibt
Die Hauptsache ist zu lernen wie man an ein Problem herangeht, die Prinzipien der Softwareentwicklung, Algorithmen, best practices usw.. Die Programmiersprachen sind sich oft sehr ähnlich und oft nur eine Frage der Praxis. Es gibt natürlich in den Programmiersprachen auch Besonderheiten, die diese für bestimmte Probleme zur besten Option machen. Solche Entscheidungen sind aber nicht die Aufgabe und das Problem von Anfängern.
Ich bin im Internet schon mehrmals auf dieses Buch gestoßen. Ist sie auf dem neuesten Stand? Ich würde eine ehrliche Antwort begrüßen... Meine ersten Erfahrungen mit Programmierbüchern haben gezeigt, dass sie schneller veraltet sind, als man Zeit hat, sie zu lesen Obwohl ich wahrscheinlich gerade die falsche Wahl getroffen habe ...
Können tut man vieles, die Frage ist: wozu? Wenn man in einer Programmierumgebung arbeitet, erlangt man mit der Zeit eben Wissen und z. B. auch ein Gefühl dafür, wo was zu finden ist (d. h. wie werden Dinge benannt, wie sind die Bibliotheken strukturiert usw.) Man könnte auch von Erfahrung sprechen. Bewusst auswendig lernen wird da keiner was, kenne zumindest niemanden, denn was man ständig verwendet, prägt sich automatisch ein.
Lerne Konzepte, keine Sprachen/Bibliotheken. Eine Sprache zu "lernen" ist relativ einfach, sich in der Umgebung der Sprache zurechtzufinden, dauert etwas länger. Expert-Level erreichst Du ggf. erst nach Jahren. Was bleibt, sind Konzepte. Dazu gehören insbesondere Programmierparadigmen (wie imperativ, objekt-orientiert, funktional, deklarativ), Algorithmen und Datenstrukturen.