Erfahrungen mit Roboguice und Butter Knife

  • Hallo Leute,


    ich habe jetzt schon mehrfach etwas über "Roboguice " und "ButterKnife " gelesen. Beides sind Bibliotheken für Android, die einem das Programmieren leichter machen sollen und den Code reduzieren. Ich finde es sehr interessant und spiele mit dem Gedanken, mit Roboguice zu arbeiten. Wer von euch hat denn schon negative/positive Erfahrungen damit gemacht? Gibt es etwas zu beachten, bevor man loslegt?


    Grüße
    lukastruemper

  • Also ich höre davon zum ersten Mal und bin zwiegespalten.


    Einerseits eine supergeile Idee.
    Genau die Dinge nerven mich nämlich an Java gewaltig.


    Andererseits gibst Du damit die Kontrolle ab.
    Es ist immer besser zu wissen, was man tut und wie Dinge funktionieren als dass man sich alles abnehmen lässt. ;)

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Das mit der Kontrolle stimmt allerdings. Zum Beispiel frage ich mich gerade, ob das alles so reibungslos mit den Support Libraries funktioniert. Aber warum sollte es nicht?!


    Edit: Klassen, wie RoboActionBarActivity sind anscheinend für die nächste Version geplant und im GitHub-Projektordner gibt es auch implementierte Varianten, aber die derzeitige .jar unterstützt noch nicht die neuen Klassen des Support-Library-Projektes.

  • So ich habe mich entschieden, Butter Knife von Jake Wharton zu benutzen. Roboguice hat den Nachteil, dass man immer von der RoboActivity erben lassen muss. Gibt es neue Arten von Activities wie die ActionBarActivity muss Roboguice aktualisiert werden. Das ist ein Nachteil den Butter Knife nicht hat. Man kann Butter Knife komplett unabhängig von der Android Version und allen anderen Libraries benutzen.


    Wie es bis jetzt funktionier?
    Top! Alle "findViewById" wurden verbannt und auch "setOnClickListener" sind überflüssig geworden. Sieht sehr schön aus und einige unschöne Code-Zeilen wurden dadurch entfernt. Genauso ist der Zusatz @Optional eine coole Sache, wenn man 2 ähnliche Layouts für eine Activity hat und je nach Situation eines benutzt. Der automatische Cast bei "@OnClick" und "ButterKnife.findById" ist eine super Funktion.


    Erstes Fazit: Butter Knife ist wirklich zu empfehlen, da es transparent ist und einem hilft, den Code schön zu gestalten. Roboguice ist derzeit weniger zu empfehlen, da man nicht immer up-to-date ist.


  • Weitere Beispiele für Fragments etc.: Butter Knife

  • aah sehr schöne sache, mit annotationen, das kommt mir doch aus JEE sehr bekannt vor :)
    Das Inject kenne ich auch daher.


    Wobei du den OnClickListener auch in der XML definieren könntest, dann bräuchtest du auch keine Annotationen nutzen.
    Also der einzige (aber nette) vorteil ist das inject :)


    klingt gut, schau ich mir dochmal an !


    Edit: Wobei ich auch wieder sagen muss, theoretisch find ich es besser ohne inject an dieser stelle. Wegen dem bisschen schreibarbeit die Debug möglichkeiten aufgeben möchte ich nicht. Ich mein wie willst du debuggen wenn dort intern an irgendein Fehler auftritt weil du irgendwo was falsch gemacht hast?


    Außerdem frag ich mich, woher weiß die lib welche TextView in der java zu welcher TextView im XML gehört?
    ich bin mir nicht sicher dass das alles einwandfrei funktioniert :o

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!