The Gunner Geschrieben 18. November 2011 Geschrieben 18. November 2011 Hallo Liebe Leute Ich habe zwei Anliegen um Java. Und zwar beherrsche ich bereits Eiffel, welches wir im Studium gelernt haben. Das war meine erste Programmiersprache. C habe ich auch schon gesehen, aber da habe ich nur rudimentäre Kentnisse. Java habe ich auch bereits gesehen und auch schon was in Java geschrieben, aber eben nur sehr wenig Kentniss davon. Ein Hallo Welt kriege ich aber hin. Nun würde ich gerne meine Java Kentnisse mit einem Buch vertiefen, da ich bei meine Bachelor Thesis wohl auch etwas in Java schreiben muss. Was Klassen, Objekte sind etc. weiss ich alles, mein Problem liegt mehr im javaspezifischen Bereich. Einen GUI habe ich auch noch nie geschrieben, da bräuchte ich auch eine Einführung und ein ganzen Programm habe ich in Java auch noch nie geschrieben. Bis jetzt habe ich halt zwecks Studium halt v.a. Frameworks ergänzt und so. Welches ist da das beste Buch für Java? Java ist eine Insel oder ist das vielleicht schon zu einfach? Wichtig ist wohl noch, dass es auch Aufgaben hat, wo man selber etwas schreiben muss. Wegen dem Studium habe ich leider nicht so viel Zeit, werde aber ab und zu was lesen und bis zur Bachelor Thesis habe ich auch noch ein Jahr Zeit. Meine zweite Frage dreht sich auch um Java. Und zwar habe ich vor einiger Zeit mal ein Programm in AutoIt angefangen zu schreiben um Abläufe am Computer auf Windows zu automatisieren. Kann man das auch in Java machen oder sollte ich da besser bei AutoIt bleiben? Wäre vielleicht gerade eine gute Gelegenheit ein Java Programm zu schreiben. Zitieren
SilentDemise Geschrieben 18. November 2011 Geschrieben 18. November 2011 Ich würde mir Java von Kopf bis Fuß kaufen und Java ist auch eine Insel online als Nachschlagewerk verwenden. Zur Windows Automatisierung würde ich die Powershell nutzen. Zitieren
afo Geschrieben 18. November 2011 Geschrieben 18. November 2011 Meine zweite Frage dreht sich auch um Java. Und zwar habe ich vor einiger Zeit mal ein Programm in AutoIt angefangen zu schreiben um Abläufe am Computer auf Windows zu automatisieren. Kann man das auch in Java machen oder sollte ich da besser bei AutoIt bleiben? Wenn du verschiedene Programme und ggf. auch Clicks in ihnen automatisieren willst bleib bei AutoIt oder (von mir bevorzugt) AutoHotkey. Wenn es dir hauptsächlich um Windowsfunktionen geht schau dir die Powershell an. Zitieren
The Gunner Geschrieben 19. November 2011 Autor Geschrieben 19. November 2011 Vielen Dank. "Java von Kopf bis Fuss" tönt schon mal interessant und hat auch sehr gute Bewertungen bekommen. Ich habe jetzt auch oft gelesen, dass "Java ist auch eine Insel" mehr als Nachschlagewerk dient als um Java zu lernen. Der Vorteil von "Java von Kopf bis Fuss" ist ja noch, dass es nicht gerade so viele Seiten hat wie "Java ist auch eine Insel". Aber ist "Java von Kopf bis Fuss" nicht vielleicht doch ein wenig zu einfach für mich? Wie gesagt, kann ich bereits Programmieren, also Eiffel beherrsche ich relativ gut. Nur eben in Java bin ich ein Neuling. Ich habe jetzt oft gelesen, dass "Java von Kopf bis Fuss" besondern für solche geeignet ist, die noch nie programmiert haben. Ist in "Java von Kopf bis Fuss" auch etwas über GUIs drin? Und wenn ich das Buch durch habe, beherrscht man dann Java bereits gut bzw. würde das dann auch für eine Bachelor Thesis reichen also um ein eigenständiges Programm zu schreiben? Möchte da jetzt nicht mir das Buch kaufen, durcharbeiten und dann am Schluss merken, dass ich doch noch weitere fortgeschrittene Bücher kaufen muss. Zur Automatisierung. Da habe ich mich falsch ausgedrückt. Ich möchte nicht Windows Funktionien automatisieren, sondern v.a. Programme, also Klicks etc. Kann man das nicht direkt in Java machen, also gibt es da keine library? AutoIt gibt es ja auch für Java, aber das bringt dann ja nicht so viel, da kann ich ja auch gleich AutoIt selber brauchen. Zitieren
flashpixx Geschrieben 19. November 2011 Geschrieben 19. November 2011 Ist in "Java von Kopf bis Fuss" auch etwas über GUIs drin? Und wenn ich das Buch durch habe, beherrscht man dann Java bereits gut bzw. würde das dann auch für eine Bachelor Thesis reichen also um ein eigenständiges Programm zu schreiben? Möchte da jetzt nicht mir das Buch kaufen, durcharbeiten und dann am Schluss merken, dass ich doch noch weitere fortgeschrittene Bücher kaufen muss. Keiner wird Dir sagen können, was das richtige für Dich ist. Eiffel wie auch Java unterliegen im Allgemeinen dem OO-Paradigma, da bestehen sicher Gemeinsamkeiten. Zu jedem Themengebiet gibt es weitere Fachliteratur z.B. Java Swing Java Swing (Java (O'Reilly)): Amazon.de: Robert Eckstein, Marc Loy, Dave Wood: Englische Bücher Zu der Frage, ob es für die Bsc Thesis reicht, wird Dir hier auch keine eine Antwort geben können, denn keiner weiß was Du machst und wo der Schwerpunkt liegt. Ich sage mal so, wenn Du Dich mit verteilten Systemen beschäftigen solltest, dann wird eine GUI sicherlich ein hübsches Addon sein, aber in diesem Fall wäre GUI Programmierung wohl eher falsch. Mir scheint es aber, dass Du "Java programmieren" gleich setzt mit "Algorithmus Entwicklung". Die Sprache Java, ebenso wie C++ oder Eiffel ist eine konkrete Sprache mit der man ein Problem am Rechner umsetzen kann. Die Logik & Semantik allerdings ist unabhängig davon, d.h. wenn Du das gegebene Problem nicht verstanden hast und auch keine Lösung dafür in allgemeiner Form entwickeln kannst, dann wird keine Programmiersprache der Welt das Problem lösen können. Ebenso ist gilt dies für die Bsc Thesis, es kommt nicht darauf an, dass Du ein ganz tolles Java Programm schreiben kannst, sondern ob Du die Problemstellung aufgrund Deines Wissen sinnvoll erarbeitet hast, dazu einen sinnvollen Lösungsweg gefunden hast und diesen dann vielleicht in einer passenden Sprache implementieren kannst. Gerade der letzte Punkt sollte durchaus immer überdacht werden, denn nur weil Du Java oder Eiffel kannst, muss diese Sprache für das Problem nicht unbedingt eine gute Wahl sein z.B. wenn ich Dir sage "schreib mit einen Tachenrechner in den ich die Berechnung in Worten eingebe z.B. elf plus zweiundzwanzig und er soll mir dann dreiundreißig liefern", dann würde ich sicherlich nicht mit Java oder Eiffel arbeiten wollen, sondern dann nehme ich Prolog mit eine DCG (Prolog (Programmiersprache)). Du solltest die Wahl der Programmiersprache von dem Problem abhängig machen und nicht sagen, ich versuche das Problem mit Java zu lösen, weil ich das kann. Zur Automatisierung. Da habe ich mich falsch ausgedrückt. Ich möchte nicht Windows Funktionien automatisieren, sondern v.a. Programme, also Klicks etc. Kann man das nicht direkt in Java machen, also gibt es da keine library? AutoIt gibt es ja auch für Java, aber das bringt dann ja nicht so viel, da kann ich ja auch gleich AutoIt selber brauchen. Das geht "auch" mit Java mit Java Native Interface oder Java Native Access Du hängst Dich eben an das Windowsobjekt direkt dran und führst die gewünschten Aktionen direkt aus z.B. via Component Object Model , Object Linking and Embedding oder ActiveX Aber Du solltest Dir auch dann die Frage stellen, ob ein solches Vorgehen sinnvoll ist Zitieren
The Gunner Geschrieben 20. November 2011 Autor Geschrieben 20. November 2011 Du solltest die Wahl der Programmiersprache von dem Problem abhängig machen und nicht sagen, ich versuche das Problem mit Java zu lösen, weil ich das kann. Ich werde mir aber eine Bachelor Thesis suchen, die ich in Java machen kann. Eine neue Programmiersprache für bzw. während der Bachelor Thesis zu lernen habe ich wohl nicht Zeit. Das geht "auch" mit Java mit Java Native Interface oder Java Native Access Du hängst Dich eben an das Windowsobjekt direkt dran und führst die gewünschten Aktionen direkt aus z.B. via Component Object Model , Object Linking and Embedding oder ActiveX Aber Du solltest Dir auch dann die Frage stellen, ob ein solches Vorgehen sinnvoll ist Warum sollte es nicht sinnvoll sein? Ist zwar wahrscheinlich schwieriger als mit AutoIt, aber dafür ist es auch keine Skript kiddy Sprache. Zitieren
lilith2k3 Geschrieben 20. November 2011 Geschrieben 20. November 2011 Effective Java: A Programming Language Guide Java Series: Amazon.de: Joshua Bloch: Englische Bücher pflichtlektüre ... Zitieren
afo Geschrieben 20. November 2011 Geschrieben 20. November 2011 Warum sollte es nicht sinnvoll sein? Ist zwar wahrscheinlich schwieriger als mit AutoIt, aber dafür ist es auch keine Skript kiddy Sprache. Dies ist eine ziemlich kindische Haltung. Zitieren
The Gunner Geschrieben 21. November 2011 Autor Geschrieben 21. November 2011 (bearbeitet) Ist denn eher "Java von Kopf bis Fuss" oder "Effective Java (2nd Edition): A Programming Language Guide" zu empfehlen? Das letztere hat auch sehr gute Bewertungen, könnte aber vielleicht ja schon zu weit gehen. Vielleicht wäre die Reihenfolge "Java von Kopf bis Fuss" und dann "Effective Java (2nd Edition): A Programming Language Guide" am besten, das letztere Buch hat ja auch "nur" 384 Seiten. Was meint ihr? Oder vielleicht doch nur die Tutorials von Tutorials von Sun/Oracle lesen? Bearbeitet 21. November 2011 von The Gunner Zitieren
lilith2k3 Geschrieben 21. November 2011 Geschrieben 21. November 2011 Ist denn eher "Java von Kopf bis Fuss" oder "Effective Java (2nd Edition): A Programming Language Guide" zu empfehlen? In meinen Augen ist das die falsche Frage. Beide Bücher richten sich an unterschiedliche Zielgruppen. Die "von Kopf bis Fuß" Bücher sind meist im Bereich Beginners-Intermediate angesiedelt. Also in etwa: der, der noch nichts von Java, Objektorientierung etc. gehört hat kann sehr viel lernen. Den ein oder anderen Kniff kann man dem Fortgeschrittenen evtl. noch zeigen. "Effective Java" richtet sich an die Gruppe, die quasi schon "von Kopf bis Fuß" hinter sich haben. Um es einmal aus "Verkäufersicht" zu sagen: »Du bist eine schwierige Zielgruppe« Java habe ich auch bereits gesehen und auch schon was in Java geschrieben, aber eben nur sehr wenig Kentniss davon. Ein Hallo Welt kriege ich aber hin. Was prinzipiell ja noch für "von Kopf bis Fuß" spräche. Was Klassen, Objekte sind etc. weiss ich alles, mein Problem liegt mehr im javaspezifischen Bereich. Was wiederum eher für Joshua Bloch spräche. Welches ist da das beste Buch für Java? Java ist eine Insel oder ist das vielleicht schon zu einfach? "Java ist eine Insel" ist mehr sowas wie ein "Duden" für Java. Also eine ganz andere Kategorie Buch. Vom Anspruch her ist Joshua Bloch Dir am Anfang wahrscheinlich zu anstrengend und trocken; aber verspricht den meisten Gewinn. Wann geht's denn los mit der Praxisphase? Meine zweite Frage dreht sich auch um Java. Und zwar habe ich vor einiger Zeit mal ein Programm in AutoIt angefangen zu schreiben um Abläufe am Computer auf Windows zu automatisieren. Kann man das auch in Java machen oder sollte ich da besser bei AutoIt bleiben? Wäre vielleicht gerade eine gute Gelegenheit ein Java Programm zu schreiben. Generell programmiert man, um irgendwelche Abläufe zu automatisieren - ansonsten benötigt man keine Computer Aber ich fände es aus pädagogischer Sicht sinnvoll, wenn Du bestehende AutoIt-Projekte hast, und die dann nach Java portierst. Ansonsten empfiehlt es sich für (natives) "Windows-Scripting" tatsächlich auch die Powershell zu benutzen. Bzw. benutze ich meist Cygwin (wg. Bash) und Python, um kleinere Scripts zu schreiben. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.