2010-08-16 8 views
26

Soll ich Java lernen, bevor ich Android gelernt habe, oder kann ich beides parallel machen? Was ist der beste Ansatz?Soll ich Java lernen, bevor ich Android lerne?

+0

Was meinst du? – Eugene

+0

Wenn Sie in Ihre alten Fragen gehen, können Sie die Antwort "ankreuzen", die am hilfreichsten ist. Manche Leute werden verärgert über diejenigen, die sich nicht darum kümmern. Persönlich finde ich nichts, worüber man sich aufregt, aber da gehen wir ... –

+3

Ähnliche Fragen: http://stackoverflow.com/questions/2981495/how-much-java-should-i-have-learnt -before-trying-android-Programmierung und http://stackoverflow.com/questions/2915410/is-deep-java-knowledge-need-for-android – Jesper

Antwort

72

Ich würde absolut Java zuerst lernen. Kümmern Sie sich nicht Lernen Dinge wie Servlets, Swing etc - aber lernen:

  • Die Kernsprache
  • Kollektionen
  • IO
  • String Handling

Der Versuch, diese zu lernen, während auch Das Erlernen einer völlig neuen Umgebung macht es viel schwieriger herauszufinden, wo Sie falsch liegen.

Beachten Sie, dass dies nicht spezifisch für Android ist - ich würde Entwickler immer ermutigen, den "Kern" einer neuen Plattform zu erlernen, bevor sie "periphere" Technologien wie native UIs oder Web-Frameworks erlernen.

Ich habe Leute gesehen, die versuchen, dies vorher zu tun - buchstäblich komplizierte Fragen über fortgeschrittene Szenarien zu stellen, während sie die Grundlagen der Sprache nicht verstehen. Manchmal war das Problem, das sie hatten, auf die komplexe API zurückzuführen, die sie verwendeten, und manchmal lag es an den grundlegenden Missverständnissen - , aber die Probleme sehen für sie genau gleich aus. Sie können nicht unterscheiden, ob sie nicht verstehen, wie Methodenargumente übergeben werden, und haben Schwierigkeiten beim Cross-Threading von UI-Operationen. Für sie ist "etwas falsch gelaufen". Jeder Schritt ist schmerzhaft, wenn Sie keine solide Grundlage haben.

Abgesehen von allem, so langweilig wie Konsolen-Anwendungen ohne Interaktion sein könnte, sind sie wirklich ideal für nur etwas schnell zu testen. In der Regel müssen Sie sich nicht um Threads, Berechtigungen, Grafiken, Ressourcen usw. kümmern. Eine weitere gute Möglichkeit, Ihr Verständnis zu testen, sind Unit-Tests. Anstelle eines normalen Test-First-Ansatzes sollten Sie eine Methode schreiben und ihre Ausgabe mit Unit-Tests vorhersagen, bis Sie keine interessanten Situationen mehr zum Testen haben. Sobald Sie fertig sind, haben Sie eine vollständige Aufzeichnung dessen, was der Code tut - bewahren Sie ihn für später auf, für den Fall, dass Sie das Konzept, das Sie getestet haben, erneut besuchen müssen.

+2

Einverstanden - Ich bin ein Entwickler, der bereits viel in C# und Java programmiert hat.Es war nicht schwer hineinzukommen und Code für die erste Android App, die ich mache, hinter der Arbeit zu haben. Der Großteil meines Lernens wird nun UI-Interaktion und telefonspezifische Dinge sein. Aber ohne das Java-Wissen wäre ich verloren. – theJerm

+0

@JonSkeet und was, wenn ich ein Experte C# -Entwickler bin, kann ich in Android-Entwicklung tauchen? –

+0

@AliIssa: Ich würde immer noch ein wenig Zeit brauchen, um zuerst mit Desktop Java zu experimentieren, nur um deine Füße zu finden. Verbringe eine Woche damit, die Sprache und die wichtigsten APIs zu erkunden, * dann * starte Android. –

9

Lernen ist immer einfacher, wenn Sie Ziele anstreben. Wenn Sie hauptsächlich Android-Programme programmieren möchten, konzentrieren Sie sich darauf und Sie werden Java auf Ihrem Weg mitnehmen.

+15

Und für Ihre nächste Handlung, möchten Sie vielleicht ein Buch auf Chinesisch schreiben. Mach dir nichts daraus, zuerst etwas zu lernen - ich bin sicher, du wirst es auf dem Weg aufnehmen. Im Ernst, es wird * viel * einfacher sein, Java in einer Umgebung zu lernen, in der es einfach ist mit ihm zu spielen, Konsolen-Apps zu schreiben usw. Wenn das OP beim Schreiben einer Android-App auf ein Problem stößt, wird es * wirklich * schwer zu diagnostizieren, was passiert, wenn er die Sprache nicht vorher kennt. –

+2

Ich denke, das Lernen einer bestimmten Verwendung einer Programmiersprache zu vergleichen, ein Buch über eine gesprochene Sprache zu schreiben, ist ein bisschen hart. Das letzte Mal, als ich überprüft habe, dass Android Java verwendet, fand ich es ziemlich offensichtlich, dass ich Java und Android zur gleichen Zeit lernen wollte, anstatt mich zu 100% auf Java zu konzentrieren und dann zu Android zu wechseln. – Robert

+0

@Robert: Aber zu einer Plattform in einer mobilen Umgebung zu lernen (oder tatsächlich ziemlich viel zu lernen * irgendeine * fortgeschrittene Client-UI-Technologie), wenn man die Sprache nicht kennt, ist viel schwieriger als das Lernen des Kerns der Sprache in einer einfacheren Umgebung und dann Weiter zur härteren Version der Plattform. Ich rate dringend * gegen * versuche, zwei wichtige Dinge gleichzeitig zu lernen. –

2

Das Tutorial in der Android Developer Website ist schwer zu verstehen, wenn Sie nichts über Java wissen. Ich würde empfehlen, mit Java-Grundlagen zu beginnen und dann mit Android fortzufahren. Es wäre der beste Weg, alles auf eine einfachere Art und Weise zu verstehen.

In Java müssen Sie sich auch auf die effiziente Vorgehensweise konzentrieren, da der mobile Akku in mobilen Anwendungen eine wichtige Rolle spielt.

1

wenn Sie C# kennen, können Sie android beginnen jetzt

+0

Nicht wirklich wahr. Sie können Xamarin heutzutage starten –

2

Ja, ich würde zumindest die Grundlagen der Java lernen, bevor sie auf Android zu starten.

Starten in Android wäre wie Tauchen zu lernen, bevor Schwimmen lernen, sicher, Sie könnten sich wahrscheinlich kämpfen, aber Sie werden den Prozess unnötig schwieriger für Sie machen.

1

Java zuerst Wenn Sie wissen, C# ist nahe genug, wo Sie es tun können, wie Sie wollten. ansonsten, definitiv java.

Lernen Sie eine Datei zu öffnen, mit Benutzereingaben umgehen besonders Strings, lernen alle grundlegenden Keywords

, wenn Ihre neue allgemeine dev in, lernen Looping, Verzweigung, Einbettung Entscheidungsfindung. "Ihr ein langer Weg von Android in diesem Fall würde ich sagen" ein gutes Buch wird viel mehr helfen, als der freie Mist youll online finden. Ich ging monatelang die Online-Route und stolperte. griff ein gutes Buch und war auf dem Android in 2 Wochen bewegt. wenn du weißt, wo du suchen musst, sind auch gute Bücher kostenlos;)

Verwandte Themen