Zum Inhalt springen

Java Buch für fortgeschrittener Neuling gesucht


Empfohlene Beiträge

Geschrieben

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.

Geschrieben

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.

Geschrieben

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.

Geschrieben

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

Geschrieben
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.

Geschrieben

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.

Geschrieben (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 von The Gunner
Geschrieben
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.

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...