# So lernt man am schnellsten Java!



## Nitrogenius (4. Dez 2008)

Hallo zusammen!

Ich muss in einem Projekt muss einen Überblick über Java geben. Dabei muss ich u.a. auch darauf eingehen, welche Methoden es gibt, sich die Sprache anzueignen, und welche davon besonders sinnvoll sind. Leider kann ich noch keine Programmiersprache und habe daher keinen Überblick über den Umfang, den das Lernen in Anspruch nimmt.

Ich würde daher gerne auf eure Erfahrungen zurückgreifen. 

Welche Methoden sind besonders gut geeignet, und womit habt ihr die Sprache gelernt? 

Was war besonders schwierig, welche Quellen habt ihr genutzt? Was ist nicht zu empfehlen?
Welche Rolle hat das Internet gespielt?

Konsequentes Erlernen (Thema a->z) oder Sprungweise Lernen (je nach Anforderung)?

Gut wäre, wenn ich die Umfrage als Referenz nehmen könnte, mit ein paar Kommentaren wäre mir also sehr geholfen.

Vielen Dank im Voraus,

Manuel

PS: Hätte gerne eine andere Umfrage mit mehreren Auswahlmöglichkeiten erstellt, dies ist nicht möglich?


----------



## Beni (4. Dez 2008)

Also ich habe keine Bücher gelesen und wild drauslosgeschrieben. Dieses Trial & Error Verfahren benötigte sehr viel Zeit, aber danach konnte ich Java ziemlich gut.

Das Hintergrundwissen kam erst später - manches war überraschend, anderes erschien mir trivial.

Da Java aber mittlerweile derart gross ist, glaube ich nicht, dass man alles auf einmal lernen kann. Sprungweise erscheint mir realistischer.


----------



## Schandro (4. Dez 2008)

Ich würd Schulunterricht schonmal ausschließen. Wenn du zu Hause nichts machst kackste ab wennde was in deiner Freizeit zusätzlich machst langweiligst du dich komplett. In 3 Jahren Java-Schulunterricht hat en kumpel von mir genauso viel gelernt wie ich mir in 2 Monaten selber beigebracht hab, nur so nebenbei^^

Ich würd die Syntax und OOP aufeinanderbauend lernen, nicht sprungweise.
Dagegen:
Sachen wie "Was ist ein Layoutmanager" erst wenn du die entsprechende Bibliothek benötigst...


----------



## 0x7F800000 (4. Dez 2008)

zu professionellen schulungen kann ich wenig sagen, weil: keine kohle für sowas.
aber schulunterricht kannst du jedenfalls vergessen... ~4 stunden die woche hier und da an dem stoff rumzukratzen bringt sogut wie nichts. man soll's entweder machen oder lassen.


----------



## Ark (4. Dez 2008)

Nitrogenius hat gesagt.:
			
		

> Welche Methoden sind besonders gut geeignet, und womit habt ihr die Sprache gelernt?


Java ist das eine, Objektorientierung etwas völlig anderes. Man lernt solche Sprachen üblicherweise durch Lesen, Schreiben und Korrigierenlassen. Das Programmieren an sich hat dann schon nicht mehr viel mit OO oder Java zu tun, trotzdem ist es aus meiner Sicht das Wichtigste. Und Programmieren lernt man nur, wenn man sich selbst allein(!) hinsetzt und das macht, _obwohl_ es vielleicht völlig nutzlos, sinnlos, schwierig und vereinsamend erscheint. Niemand schaut zu, und wenn doch, dann sollte man sich davon nicht beeindrucken lassen. Man sollte auch nicht darauf warten, dass irgendwann jemand daherkäme, der das _erklären_ kann. Das ist wie Meditieren: Jeder macht es für sich _allein,_ und die Erfahrungen, die man dabei macht, sind wichtiger als jeder noch so gute Rat von anderen. Deshalb programmiert auch jeder anders.



			
				Nitrogenius hat gesagt.:
			
		

> Was war besonders schwierig, welche Quellen habt ihr genutzt? Was ist nicht zu empfehlen?


Das Schwierigste ist es wohl, sich dabei selbst zu überwinden. Wer auf andere setzt, die das einem abnehmen sollen, wird es nie lernen.



			
				Nitrogenius hat gesagt.:
			
		

> Welche Rolle hat das Internet gespielt?


java.sun.com



			
				Nitrogenius hat gesagt.:
			
		

> Konsequentes Erlernen (Thema a->z) oder Sprungweise Lernen (je nach Anforderung)?


Wieder einmal kann man das Programmieren mit dem Meditieren vergleichen: Es gibt nichts zu erreichen! Es darf weder einen Grund noch einen Nicht-Grund haben. Man kommt nur dann weiter, wenn man seinen Kopf von Gedanken befreit, die darüber diskutieren, ob es einen Sinn oder Unsinn hat, ob es nützlich oder nutzlos, ob es begründet oder unbegründet ist.



			
				Nitrogenius hat gesagt.:
			
		

> Leider kann ich noch keine Programmiersprache und habe daher keinen Überblick über den Umfang, den das Lernen in Anspruch nimmt.


Gehe, bevor du einen Schritt machst!

Die Programmiersprache Java ist nicht das Problem. Man tut sich viel leichter, wenn man die Konzepte dahinter verstanden hat, und dazu braucht man OO. OO ist nicht das größte Problem. Die Idee hinter der OO versteht man sehr gut und man wird sie zu schätzen wissen, wenn man bereits viel Programmiererfahrung mitbringt. Aber das Programmieren kann dir niemand erklären. Das wirst du in keiner Uni und in keiner Berufsschule lernen. Niemand kann es dir beibringen. Du musst das alles selbst tun. Es wird auch kein Ende geben. Es gibt nichts zu erreichen. Als Programmierer/Informatiker lernst du dein Leben lang.

Der Schüler ist Anfänger an einem Tag.
Der Meister ist es jeden Tag.

Ark


----------



## 0x7F800000 (4. Dez 2008)

Ark hat gesagt.:
			
		

> Es gibt nichts zu erreichen! Es darf weder einen Grund noch einen Nicht-Grund haben. Man kommt nur dann weiter, wenn man seinen Kopf von Gedanken befreit, die darüber diskutieren, ob es einen Sinn oder Unsinn hat, ob es nützlich oder nutzlos, ob es begründet oder unbegründet ist.


was diesen Punkt angeht: hör mal auf herumzulevitieren, komm mal runter^^ 
ansonsten stimme ich zu


----------



## Murray (4. Dez 2008)

Nitrogenius hat gesagt.:
			
		

> Konsequentes Erlernen (Thema a->z) oder Sprungweise Lernen (je nach Anforderung)?[/color]



Wie Beni schon geschrieben hat - es geht nur sprungweise. Das liegt aber m.E. nicht an der Sprache an sich, sondern an der Vielzahl von Bibliotheken und Frameworks, die man de facto eben auch braucht, um "real-word"-Programme zu schreiben.


----------



## Gelöschtes Mitglied 5909 (4. Dez 2008)

streiche schulunterricht und kombiniere alles und füge evtl. noch vorlesungen dazu


----------



## jakoby84 (5. Dez 2008)

Also am Anfang denke ich schon, dass es gut ist, wenn man jemand hat, der einem zwar nicht über die Schulter schaut, aber wenigstens bei Fragen zur Verfügung steht. Denn manchmal verzweifelt man schlicht und ergreifend an simplen Syntax- oder Verständnis-Problemen. Ansonsten hilft wirklich nur das Rumexperimentieren; sich selbst ein Ziel setzen und gucken ob man es erreicht oder nicht. Dran bleiben ist da wohl das wichtigste, denn bis es einmal Klick gemacht hat, können schon so einige Stunden ins Land gehen, dafür hat mans dann aber wirklich verstanden bzw. hat gelernt, wie man sein Problem analysiert, eingrenzt, umsetzt und Fehler findet und behebt. Jeder noch so gute Programmierer wird immer mal wieder in Dokumentationen, Bibliotheken, Kommentare gucken; die Herausforderung ist nicht, alles im Kopf abzuspeichern sondern zu lernen, wie man sich etwas selbst erarbeitet, da man sowieso nicht alles beherrschen kann.
Wir haben an der Hochschule Vorlesung und Tutorium (vom Prof abgehalten), da merk ich immer wieder, dass das, was in der Vorlesung vermittelt wird, nicht wirklich weiter bringt beim reellen Programmieren. Zwar können Konzepte aus der Vorlesung angewandt werden, die Hand-Outs zum Nachschlagen verwendet werden etc., aber jegliche Vorlesung/Unterricht/Schulung bringt nichts, wenn man sich zu einem abstrakten Problem nicht vorstellen kann, wie es programmiertechnisch umgesetzt wird (/werden könnte).
Mit OO hab ich mich leider noch nicht umfassend beschäftigt, glaube aber, dass mir deshalb so manches nicht so leicht von der Hand geht; insofern ganz ohne Theorie gehts auch nicht. Ist eben nur die Frage, die jeder selbst für sich entscheiden muss, wann man programmieren üben sollte und wann eine 'Fortbildung' in der Theorie angesagt ist...


----------



## Tobias (5. Dez 2008)

@Ark: Zen pur.


----------



## The_S (5. Dez 2008)

Um mich auch im 3. Forum zu wiederholen :-D

1.) ein *gutes *Buch lesen
2.) *Programmieren*, *programmieren *und noch mal *programmieren*
3.) Aktiv in einer Community mitwirken (Fragen stellen und beantworten)
4.) Wenn genug Geld da ist: Schulungen zu *Spezialthemen*

Ich glaube mit dieser Reihenfolge fährt man ganz gut (allgemein beim Erlernen von Programmiersprachen)


----------



## Verjigorm (5. Dez 2008)

Hobbit_Im_Blutrausch hat gesagt.:
			
		

> 1.) ein *gutes *Buch lesen



Es dürfen auch gerne mehrere sein


----------



## Ark (5. Dez 2008)

Tobias hat gesagt.:
			
		

> @Ark: Zen pur.


Ja, das passiert mir öfters.  *g*

Zumindest spiegelt das Geschriebene meine Erfahrungen wider. Siehst du das denn anders?

Ark


----------



## Tobias (5. Dez 2008)

Absolut nicht. Als Karate-ka ist Zen für mich ausschließlich positiv. 

"Karate is moving Zen." -> "Programming is computer-aided Zen" - wirklich hübsche Vorstellung .


----------



## Ark (5. Dez 2008)

Tobias hat gesagt.:
			
		

> Absolut nicht. Als Karate-ka ist Zen für mich ausschließlich positiv.
> 
> "Karate is moving Zen." -> "Programming is computer-aided Zen" - wirklich hübsche Vorstellung .


CAZ ... das muss ich mir merken! 

(Jetzt ist Nitrogenius komplett verwirrt! )

Ark


----------



## 0blacko0 (5. Dez 2008)

Ich gehe in eine technische Schule(höhere technische Lehranstalt)

Da ich in eine technische Schule gehe gibt es natürlich auch Angewandtes Programmieren.
(wir machen JAVA was eig. eh klar sein sollte)

Meine Meinung:

Ich finde den Schulunterricht weder gut noch schlecht, nur schade das vier 3 Stunden die woche haben
1 Stunden Theorie und 2 Stunden Praxis.

Wir kriegen grade mal 1 Bsp die Woche und das natürlich schwer ist.

Wir haben 2 Gruppen , einen Proffesionellen APR-Lehrer und einer der sich fast garnicht auskennt
(kA wie man ihn eingestellt hat) und wie der Zufall will, habe ich den dummen APR Lehrer.
Unsere Fragen werden nie beantwortet.  :shock: 

Ich kenne mich vorallem nicht mit den Objekten aus und deshalb muss ich jede Woche einmal reinposten und fragen  

Ich weiß ich hätte nur meine Meinung reinschreiben sollen, aber was solls.


----------



## quivadis (5. Dez 2008)

Programmieren lernt man eigentlich nur durch programmieren. Sprich man hat ein Problem und sucht eine Lösung. Man fängt halt mit kleinen Lösungen an und steigert sich mit jedem Projekt etwas. 
Wenn man Probleme hat Bücher lesen, Tuturials durcharbeiten und in Foren lesen und posten.

In der Schule genauso wie in der Berufschule lernt man eigentlich so gut wie gar nichts. Also ich habe in beiden Schularten nix gelernt. 

Hab mir fast alles im Selbststudium beigebracht.


----------



## hdi (6. Dez 2008)

Ich find das Ergebnis der Umfrage recht erstaunlich.

Ich finde (anscheinend als einer der ganz wenigen), dass man man das wohl mit professionellen Schulungen am besten lernt, nicht durch selbstständiges Lernen!
Natürlich ist die Frage, ob man $1.200 ausgeben möchte für einen 5-Tage Kurs bei Sun, soviel kostet der nämlich.

Aber ich man kann sich denken, dass die Jungs dort in 5 Tagen dir mehr beibringen, bzw. dir das ganze
besser beibringen, als wenn du selbst 5 Tage was machst. Das ganze ist ja auch begleitet von Übungen, 
denke ich mal stark, und man muss auch unterschieden zwischen der Frage "wie lernt man am besten Java" und 
"wie lernt man am besten programmieren". Und hier geht's um ersteres.

Wenn man allerdings keine Luste hat, zehn tausende von Dollars dafür auszugeben, ist selbstständiges Lernen
natürlich die zweit-beste Wahl. Profs und Lehrer sind dabei das letzte -- meine Erfahrungen bisher, egal ob 
Schule oder Uni, zeigen mir: In Deutschland wird NULL auf pädagogische Fähigkeiten geachtet, da lernt man null komma nix.


----------



## stev.glasow (6. Dez 2008)

is son kurs nicht wie son lehrbuch mit dem zusatz das du noch fragen stellen kann? und danach geht dann richtig los. coden, dokus, tutorials, etc. son kurs gibt dir doch nur die richtung vor. 

glaub du meinst didaktisch nich pädagogisch  :meld:


----------



## hdi (6. Dez 2008)

> is son kurs nicht wie son lehrbuch mit dem zusatz das du noch fragen stellen kann?



Genau, bis du es verstanden hast. Und wenn es ein professioneller Kurs ist, dann sind auch die Trainier
_didaktisch_ (passt hier wirklich besser) brauchbar. D.h. du wirst erst schnell begreifen wenn du nicht ein
Idiot bist. Was gibt's da besseres? Mmn nix

Wie gesagt: Die Sprache Java erlernen != programmieren lernen. Letzteres kann dir kein Mensch beibringen,
aber es bringt dir nix wenn du 20 Jahre OO-Erfahrung hast, und vor Java stehst dessen Klassen und Methoden
du nicht kennst, und da kann dir ein guter Kurs in 5 Tagen wirklich viel beibringen


----------



## stev.glasow (6. Dez 2008)

stimmt - ich ändere meinen vote. es geht ja darum die basics zu lernen und da ist sowas am besten.
@ kluggeschissl: "Didaktik ist eine Unterdisziplin der Pädagogik ... " war doch richtig.


----------



## hdi (6. Dez 2008)

> stimmt - ich ändere meinen vote



Wow, ich glaub damit kann ich mich bei Sun in der Marketing Abteilung bewerben


----------



## stev.glasow (6. Dez 2008)

grins. meint ja nur. is immer so lahm wenn alle auf ihren meinungen festsitzen - so ist's doch auch mal kuschelig ^^ ansonsten würd ich jetzt nich unbedingt jedem erzählen dass du mich kennst.


----------



## coffeecup (6. Dez 2008)

Hi!

Schulunterreicht hat immer den Nachteil, dass dir die Lehrer alles vermießen können!
Wenn man sich selbst etwas hineintiegert, macht es Spaß -> kann einen aber auch in den Wahnsinn treieben;-)

Nunja, gut sind sicher auch Bücher! Und dass Foren eine hilfreiche Sachs sind, merkst ja e grad selber;-)


 :wink:


----------



## Nitrogenius (7. Dez 2008)

Das ist ja schon deutlich mehr, als ich mir erhofft habe, sowohl was die Kommentare als auch die Teilnehmerzahl an der Umfrage angeht :lol: .

Vielen Dank soweit, vor allem für die umfangreichen Antworten. Das hat mir (und vielleicht auch dem ein oder anderem Neunling ) sehr weitergeholfen.

Die Leute die damals mit einem Buch bzw. Internetseite angefangen haben: Könnt ihr gute, leicht verständliche Bücher oder übersichtliche Internetseiten empfehlen? 

Ich soll eine Übersicht an guten Quellen zusammenstellen, Google wird schon stark genutzt, aber vielleicht übersehe ich ja den ein oder anderen Geheimtip.

Ihr sollt nicht meine Arbeit machen, daher bitte nur, wenn diese gerade zur Hand sind.

Liebe Grüße,

Nitrogenius


----------



## 0x7F800000 (7. Dez 2008)

(*_*)


----------



## scr (23. Jan 2009)

in da schule lern i nix. da zock ich lieber die ganze zeit


----------



## ARadauer (23. Jan 2009)

es kommt immer auf den lehrer drauf an. ich denke ein motivierter lehrer kann einem motivierten schüler java 100 mal besser beibringen als ein buch oder tutorial!

ist einer der beiden nicht motibiert kann mans gleich bleiben lassen....


----------



## The_S (23. Jan 2009)

Selber Schuld. Ich hab lieber in der "Schule" gelernt - dann musste man das daheim schon mal nicht machen


----------



## The_S (12. Feb 2009)

Ich hab mal alle Aspekte und Vorgehensweisen zusammengetragen, wie ich finde, dass man am Besten Java lernt.

http://www.java-blog-buch.de/000701-wie-lerne-ich-programmieren-java/

Evtl. hilft es ja jemanden. Und wenn jemand noch etwas weiß, was ich nicht berücksichtigt habe, würde ich mich über eine entsprechende Anmerkung freuen  .


----------

