kostenloser Webspace werbefrei: lima-city


Java PC und Android

lima-cityForumProgrammiersprachenJava

  1. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    Hallo liebe Limas :D

    Und zwar wollte ich mal fragen in wie fern sich die java Programmierung für PC Softwear von der Programmierung von Android Apps unterscheidet. Ich habe vor Android Apps zu schreiben, jedoch finde ich dafür kaum gute tutorials, also die Frage, kann ich auch "Normale" java Turorials mir ansehen oder muss sie Speziell für die Androidprogrammierung sein?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    Die Programmiersprache ist natürlich auf Android sowie auf dem PC gleich, es gibt nur Unterschiede in den Bibliotheken... also sowas wie GUI ist auf beiden Systemen vollkommen unterschiedlich.
    Für den Rest solltest du dir auch normale Java-Tutorials anschauen können, wenn es jetzt gerade nicht spezielle Themen wie Sound o.ä. behandelt (javax.* kannst du unter Android vergessen).
  4. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    Also das funktioniert schonmal nicht O.ô

    System.out.println("Das is ein Test!");


    Das problem is, es gibt kaum gute Tutorials über das Programmieren von Android Apps :(

    Beitrag zuletzt geändert: 15.6.2012 17:46:24 von drogen-mafia
  5. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    drogen-mafia schrieb:
    Also das funktioniert schonmal nicht O.ô
    System.out.println("Das is ein Test!");
    Der Grund: du hast in Android keine Konsole wie am PC (zumindest normalerweise nicht).

    Dafür gibt es etwas Anderes, was eine ähnliche Funktionalität hat...

    Wenn du Programme entwickelst und dabei das Android-Device per USB an den PC angeschlossen hast und die ADB verwendest kannst du so Meldungen auf dem PC ausgeben lassen:
    Log.e("Programm", "Meldung");
    Dann bekommst du in logcat die Meldung ausgegeben. Es gibt hierbei nicht nur e, sondern auch d, v, w ..., das sind jeweils verschiedene "Detailstufen", die du auch gezielt ausblenden kannst...

    drogen-mafia schrieb:
    Das problem is, es gibt kaum gute Tutorials über das Programmieren von Android Apps :(
    Wenn du JAVA bereits am PC programmieren kannst ist es auch kein so großer Unterschied mehr etwas für Android zu programmieren... du hast eben eine teilweise andere API. Eine gute Quelle ist übrigens die API-Dokumentation von Google, dort findest du alles was du brauchst, vorausgesetzt du kannst bereits JAVA programmieren.
  6. Autor dieses Themas

    drogen-mafia

    drogen-mafia hat kostenlosen Webspace.

    Wenn du Programme entwickelst und dabei das Android-Device per USB an den PC angeschlossen hast und die ADB verwendest kannst du so Meldungen auf dem PC ausgeben lassen:


    Sowas hab ich nicht vor :D
    Es sollte schon alles auf dem Smartphone ausgegeben werden.

    Wenn du JAVA bereits am PC programmieren kannst ist es auch kein so großer Unterschied mehr etwas für Android zu programmieren... du hast eben eine teilweise andere API. Eine gute Quelle ist übrigens die API-Dokumentation von Google, dort findest du alles was du brauchst, vorausgesetzt du kannst bereits JAVA programmieren.


    Ich hab mich eine lange Zeit mit PHP und MySQL befasst. Dazwischen auch ein wenig CSS & HTML, damit das ganze auch nach etwas brauchbarem aussah. Mit JAVA hab ich leider kaum was zu tun gehabt. Ich habe mir heute ne PDF datei rausgesucht bei der vlt das ein oder andere Nützliche dabei sein wird.

    Link: http://dpunkt.de/ebooks_files/free/3436.pdf

    Also kann ich mir für den Grundstoff also auch normale Tutorials anschauen? Weil ich denke mal der Größte Teil wird dann gleich sein..
  7. Hi

    also ich schreibe selber Androidapp's und kann nur sagen das Android sich ganz anders verhält als ein PC. Hier musst du zb aufpassen das du deine GUI nicht an jeder Xbeliebigen stelle verändern darfst das blockt android und das Apps schmiert ab. Ich kann dir nur empfehlen im google nache AndroidTutorials zu suchen

    http://bit.ly/MuNTHt

    vorallem das debugen ist einfach ein kraus
  8. Zur Programmierung von Android brauchst du eigentlich nur folgende Sachen:
    JDK, Android SDK, Eclipse + Plugins( sinnvoll hierbei sind FindBugs, JUnit Tests und ADT Plugin)

    Der erste sinnvolle Schritt wäre es Java zu lernen und zu verstehen.
    Hierzu empfehle ich dir http://www.gailer-net.de/tutorials/java5/index.html.(Ist Interaktiv und behandelt den Großteil).
    Sobald du die Objektorientierung verstehst kannst du dich an JavaDoc und an die Android API hängen.

    Zum Thema Spezifikationen:
    Bei Spezifikationen würde ich mich nicht auf irgendwelche Internet Tutorials verlassen sondern die von Google Inc. gegebenen benutzten. Diese kannst du je nach Android Version nachlesen.

    Zum Thema Debugging:
    Strukturiert coden und kommentieren ! Eceptions nutzten ! Methoden und Objekte klein halten. ! Debugging Tool von Eclipse nutzen :)
    Und falls dir gar nichts mehr einfällt fragen z.B. hier oder auf http://pastebin.com/.

    Gruß Batleth
  9. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    batleth schrieb:
    Zur Programmierung von Android brauchst du eigentlich nur folgende Sachen:
    JDK, Android SDK, Eclipse + Plugins( sinnvoll hierbei sind FindBugs, JUnit Tests und ADT Plugin)
    Genau genommen brauchst du nicht einmal das, es reicht das JDK und Android SDK + irgend ein Editor ;-)

    Du kannst übrigens auch am Android programmieren... dazu gibt es 2 Apps: AIDE (Android IDE) und Terminal IDE.

    AIDE ist eine richtige Java-IDE mit allem was für Android-Programmierung benötigt wird.

    Terminal IDE hingegen ist ein Linux-Basissystem das ohne root-Recht auskommt. Dabei wird zusätzlich zur Busybox beispielsweise der Editor VIM sowie die Java-Entwicklungstools mitgeliefert, und um das vom PC aus steuern zu können lässt sich entweder ein telnet- oder ssh-Server ausführen, sodass man sich vom PC aus am Android-Gerät einloggen und losprogrammieren kann, falls der Bildschirm am Android-Gerät zu klein sein sollte...
  10. hackyourlife schrieb:
    Du kannst übrigens auch am Android programmieren... dazu gibt es 2 Apps: AIDE (Android IDE) und Terminal IDE.

    ?? Wer programmiert Apps auf dem Smartphone selber ? Da ist man ja mit einer LoC ca. eine halbe Stunde beschäftigt.
    Kann man den Code dann wenigstens sofort auf der Plattform ausprobieren?
  11. algorithmpalace

    algorithmpalace hat kostenlosen Webspace.

    Hier ein gutes, englisches Tutorial:

    http://thenewboston.org/list.php?cat=6
  12. BTT:
    Als Bücher kann ich empfehlen:
    [amazon]http://www.amazon.de/Java-von-Kopf-bis-Fu%C3%9F/dp/3897214482/ref=sr_1_1?ie=UTF8&qid=1342729285&sr=8-1[/amazon]
    Um Java von grundauf zu lernen.
    [amazon]http://www.amazon.de/Java-ist-auch-eine-Insel/dp/383621802X/ref=sr_1_1?s=books&ie=UTF8&qid=1342729342&sr=1-1[/amazon]
    Als Nachschlagwerk für Java, ist sehr komplex aufgebaut das Buch und ein ziemlich dicker Schinken.
    [amazon]http://www.amazon.de/Android-Apps-entwickeln-Programmiereinsteiger-geeignet-Computing/dp/3836218135/ref=sr_1_3?s=books&ie=UTF8&qid=1342729389&sr=1-3[/amazon]
    Wiederholt nochmals die Java Grundlagen, und geht danach anhand eines Spieles die Android-Programmierung durch. Negativ ist das z.B. Datenbankabfragen nicht im Buch bearbeitet werden.
  13. karlsve

    Moderator Kostenloser Webspace von karlsve

    karlsve hat kostenlosen Webspace.

    Hallo ihr lieben,

    iys schrieb:
    Hi

    also ich schreibe selber Androidapp's und kann nur sagen das Android sich ganz anders verhält als ein PC. Hier musst du zb aufpassen das du deine GUI nicht an jeder Xbeliebigen stelle verändern darfst das blockt android und das Apps schmiert ab. Ich kann dir nur empfehlen im google nache AndroidTutorials zu suchen

    http://bit.ly/MuNTHt

    vorallem das debugen ist einfach ein kraus


    Das kann ich so nicht unterschreiben, das Ändern der GUI sollte generell nicht von jeder x-beliebigen Stelle aus geschehen, so sollte man auch in der Programmierung mit Java für den PC nicht etwa irgendwo einfach auf die GUI zugreifen und die ändern sondern Frontend ( GUI ) und Backend ( Rechenoperationen ) getrennt halten. Dies ist unter anderem auch sinnvoll um eventuell Teile der Rechenoperationen in neue Threads auszulagern. Ähnlich geschieht es auch in Android, dabei ist jedoch noch einiges Neues dabei, beispielsweise was genau Activities und Services sind, wobei sich dies auch relativ simpel erklären lässt.

    Auch das Debuggen ist nicht wirklich ein "Graus" (ich vermute mal das "Graus" gemeint war), sondern ist eigentlich genauso wie in jeder Desktop Applikation. Mit regelmäßigen Feedbacks kann man so beispielsweise die Fehlerquelle gewissermaßen triangulieren ( ich weiß ist nicht ganz korrekt diese Aussage). Außerdem lässt sich anhand der Fehlerberichte genauso viel ersehen wie bei PC-Anwendungen wenn man nicht unbedingt nur die ersten zwei Zeilen anschaut.

    Weiteres:


    Was ich eigentlich bei jeder Programmiersprache emfehlen würde ist Learning-By-Doing, denn nur dann weißt du wie du zu dem Ziel gekommen bist. (Ich habe 4 mal mit der App neu angefangen um zu dem Schluss zu kommen, dass es so wie es jetzt ist am sinnvollsten ist; siehe https://github.com/karlsve/Lima-City-for-Android)
    Klar kannst du Bücher ohne Ende lesen aber verstehst es trotzdem den simpelsten Code nicht. Die Texte auf der Android Developers Seite sind eigentlich alle sinnvoll verfasst und auch gut zu verstehen, ebenso wie die Grafiken.

    Insgesamt ist halt nur wie hackyourlife es schon sagte der Unterschied in den Libraries und eventuell in der Nutzung von ADB zu finden.

    MfG
    karlsve
  14. hallo leute,

    ich hab schon einiges mit java programmiert aber bis jetzt nur auf dem pc und habe mir überlegt anzufangen aps zu schreiben als ich gesehn habe das das auch java ähnlich sein soll.

    ich frage mich allerdings wie es denn möglich ist das man java dafür einsetzt um zb um spiele zu programmieren das es ja beim pc so ist das der interpreter dazwischen hängt und die geschwindigkeit schon drastischer langsamer ist als ein native compilirtes programm.

    funktioniert das bei android irgendwie anders oder wie funktioniert das überhaupt genau mit android zusammen ?

    danke für die antworten

    :wave:
  15. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    spiele2012 schrieb:
    ich frage mich allerdings wie es denn möglich ist das man java dafür einsetzt um zb um spiele zu programmieren das es ja beim pc so ist das der interpreter dazwischen hängt und die geschwindigkeit schon drastischer langsamer ist als ein native compilirtes programm.
    Das ist aber schon ein ganzes Zeichen her als das noch nur ein Interpreter war...
    Mittlerweile wird das Java-Programm in Maschinencode übersetzt und dabei schaut sich die JVM auch noch an wie das Programm funktioniert um es dann bestmöglich zu optimierten. Dabei könnte es durchaus vorkommen, dass ein Java-Programm schneller als ein C-Programm läuft, da das Java-Programm auch alle Extra-Features des Prozessors verwenden wird und das C-Programm nicht da es auf allen Prozessoren laufen können muss.

    Und was soll jetzt wie am Android funktionieren?

    batleth schrieb:
    hackyourlife schrieb:
    Du kannst übrigens auch am Android programmieren... dazu gibt es 2 Apps: AIDE (Android IDE) und Terminal IDE.

    ?? Wer programmiert Apps auf dem Smartphone selber ? Da ist man ja mit einer LoC ca. eine halbe Stunde beschäftigt.
    Kann man den Code dann wenigstens sofort auf der Plattform ausprobieren?
    Ja, natürlich kann man das! Welchen Sinn hätte das sonst überhaupt?
  16. k**************s

    @spiele2012:
    Wenn du in Android Apps programmieren willst, dann sollten mindestens Java Grundkenntnisse vorhanden sein. Also sollten Wörter wie public, static und class keine Fremdwörter sein.
    Trotzdem unterscheidet sich die Android Programmierung mit normalem Java, vor allem , was Layout und javax.* angeht.
    Außerdem sollten XML Kenntnisse vorhanden sein, um eben das Layout bestimmen zu können.
  17. kingofexceptions schrieb:
    @spiele2012:
    Wenn du in Android Apps programmieren willst, dann sollten mindestens Java Grundkenntnisse vorhanden sein. Also sollten Wörter wie public, static und class keine Fremdwörter sein.
    Trotzdem unterscheidet sich die Android Programmierung mit normalem Java, vor allem , was Layout und javax.* angeht.
    Außerdem sollten XML Kenntnisse vorhanden sein, um eben das Layout bestimmen zu können.


    sorry wenn ich das jetzt runterziehe, aber der beitrag ist ziemlicher blödsinn:
    nur wenn jemand public, static und class kennt, ist er noch lange nicht in der lage vernünftigen code entsprechend gängiger entwurfsmuster zu schreiben.

    ich halte generell nicht viel von diesem: wo finde ich tutorials, ich will mal "programmieren"...
    ein gutes programm entsteht in der analyse, spezifikation und im entwurf. die implementierung ist nachher das mit abstand kleinste übel.
    also erstmal mit der theorie auf dem papier beschäftigen, sonst kann da nur mist bei rumkommen ;)

    xml-kenntnisse sind gar nicht vonnöten. das bisschen was xml ausmacht, lernt man aus dem automatisch erstellten des gui builders, und im schlimmsten fall kann man ja noch google anschmeißen.
  18. Also ich habe 5 Jahre Java in der Schule gelernt und einfach mal angefangen Tutorials im internet zu lesen über android apps.

    Der Unterschied ist, dass du eben viele Befehle brauchst die extra fürs Phone gemacht sind.

    Ich hab einfach angefangen meine eigene App zu schreiben weil ich sehen wollte wie weit ich komme, und nach jetzt ca. 80 stunden hab ich meine demoversion für ein spiel fertig und es macht wahnsinnig viel spaß ("Population Demo" heißt die App bei google play).

    Man muss halt wissen was man braucht. Zum 2D zeichnen nimmt man zB ganz einfach ein Canvas (auf deutsch: Leinwand), das ist so wie am PC das g2d. Ich entwickle mit eclipse da gibts für android viele sample projekte ich finde die waren am hilfreichsten.

    Und auf der developer.android seite steht alles genau beschrieben (Aufbau und so)

    have fun
  19. peterpen schrieb:
    sorry wenn ich das jetzt runterziehe, aber der beitrag ist ziemlicher blödsinn:
    nur wenn jemand public, static und class kennt, ist er noch lange nicht in der lage vernünftigen code entsprechend gängiger entwurfsmuster zu schreiben.

    ich halte generell nicht viel von diesem: wo finde ich tutorials, ich will mal "programmieren"...
    ein gutes programm entsteht in der analyse, spezifikation und im entwurf. die implementierung ist nachher das mit abstand kleinste übel.
    also erstmal mit der theorie auf dem papier beschäftigen, sonst kann da nur mist bei rumkommen ;)

    xml-kenntnisse sind gar nicht vonnöten. das bisschen was xml ausmacht, lernt man aus dem automatisch erstellten des gui builders, und im schlimmsten fall kann man ja noch google anschmeißen.


    Halte das für den falschen Ansatz. So verschreckt man nur Leute die mal die die Materie reinschauen wollen. Natürlich kommt man bei größeren Projekten nicht drum rum, aber direkt den Leuten den Spaß mit dem "trockenen" Zeug zu versauen :P

    PS: System.out.println("Das is ein Test!"); geht sehr wohl. Handy im Debugmodus ranhängen und in die Konsole schauen.
  20. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!