wake-up-neo.net

Best Practices/Design Patterns für Android-Kodierungen

In einer kürzlich gestellten Frage wurde ich zu dieser Website weitergeleitet: http://developer.Android.com/design/index.html

Erstaunliche Website, aber eine bestimmte Frage wurde nicht beantwortet: Was sind die besten Vorgehensweisen/Entwurfsmuster, die beim Design einer Anwendung in Bezug auf den Code anzuwenden sind?

Ich habe nach MVC/MVP usw. gesucht, und obwohl dies zu Ergebnissen führt, geht es nur um die tatsächliche Implementierung der genannten Muster und nicht um andere verfügbare Optionen und dergleichen.

Ich habe versucht, verschiedene Apps, die standardmäßig von Android installiert werden, wie den Market, zu dekompilieren und zu analysieren, konnte jedoch im Code von Google keine Struktur finden. Hat jemand Tipps, wie man Android-Apps so einrichten kann, dass sie wartbar, erweiterbar usw. sind. Ich bin mir der weiten Bedeutung dieser Wörter bewusst und weiß, dass sie für den Programmierer rein subjektiv sind, aber ich kann nicht anders ausdrücken.

Eine bewährte Methode, der ich bereits begegnet bin, ist eine Ansicht pro Aktivität und viele Aktivitäten in der App, damit der Backstack ordnungsgemäß funktioniert. Ansonsten habe ich keine Ahnung, wie die Aktivität selbst eingerichtet werden soll.

29

Sie sollten (von Google IO 2011) Folgendes beobachten: http://www.youtube.com/watch?v=WGIU2JX1U5Y

Es geht nicht um ICS, sondern um Waben, aber es ist immer noch sehr interessant ...

Sie werden sehen, dass die ActionBar (es gibt auch einige Bibliotheken, mit denen Sie die ActionBar auf älteren Android-Versionen implementieren können) immer wichtiger wird und in den meisten Google-Apps für Android gefunden werden kann.

Auch der ViewPager wird viel benutzt (zum horizontalen Wischen zwischen verschiedenen Registerkarten/Ansichten), wie auf dem Markt ...

Um Ihr Projekt sauber zu halten, können Sie jeder Aktivität eine eigene XML-Datei zuweisen. Wiederholte Elemente, die Sie verwenden, sollten in einer separaten XML-Datei gespeichert werden, die Sie in jede andere XML-Datei einfügen können (Fußzeilen, Kopfzeilen, Trennzeichen usw.).

Hoffe das hilft dir weiter!

4
Ferdau

Lesen Sie zunächst die API Guides , insbesondere die Teile auf Aktivitäten und Fragmente . Wenn Sie jedoch die Zeit haben, lesen Sie alle API-Handbücher. Sie sind eine großartige Quelle für das Verständnis der Android-Entwicklung.

Abhängig von den Android-Geräten, die Sie unterstützen möchten, würde ich empfehlen, die v4 Support Library und die v7 Appcompat Library zu verwenden. Die erste (v4 Support Library) verwende ich immer wegen der Unterstützung geschachtelter Fragmente ( getChildFragmentManager () - nicht nativ von <API 18 unterstützt) und ViewPager . Die Appcompat-Bibliothek dient hauptsächlich zur Unterstützung der Actionbar auf Geräten mit Android-Versionen unter 4.0.

Ich würde auch Gradle als Build-System studieren und [ http://developer.Android.com/sdk/installing/studio.html(((Android Studio) (kostenlos) oder IntelliJ IDEA (kommerziell) als IDE.

In Anbetracht der Bibliotheken von Drittanbietern wird der Bibliotheksstapel, den ich heutzutage meist verwende (und ich verwende mich zumeist), folgendermaßen:

  • Guava als allgemeine Java-Hilfsbibliothek.
  • Dolch und ButterKnife für Abhängigkeitsinjektion.
  • OkHttp als HTTP-Transportbibliothek.
  • RetroFit oder Volley als REST Bibliotheken.
  • Picasso als Bildladebibliothek. Wenn Sie eine gute Bildladebibliothek benötigen, wenn Sie Bilder vom Server herunterladen oder anzeigen müssen, ist dies in Android von großer Bedeutung, da hier der Umgang mit Speicher und Zwischenspeicherung berücksichtigt wird. Dies kann sehr schwierig sein, wenn Sie versuchen, dies ganz alleine zu tun.

Alternativen, die auch häufig verwendet werden, sind:

Andere Bibliotheken, die ich verwende und empfehle:

Chris Banes (ein bekannter Android-Entwickler) hat kürzlich den Quellcode einer seiner Anwendungen veröffentlicht, den Sie als Beispiel verwenden können, um eine Android-App mit mehreren der oben genannten Bibliotheken zu erstellen.

19

Das erste, was Sie lernen mussten, ist, dass Android-Aktivitäten wirklich sehr gut sind. Grok die ganze Sache. Es wird viel einfacher, von dort aus weiterzugehen. Gehen Sie nicht so früh in Java-Entwurfsmuster ein, da Sie am Ende versuchen würden, das Problem an Ihr Muster anzupassen, das nicht gut endet. Sehen Sie sich die Beispiele auf der Android-Entwicklerwebsite an und schreiben Sie dann so viel Code wie möglich.

Ich habe gerade diese Website namens Android App Patterns - http://Android-app-patterns.com zusammengestellt und zeigt die verschiedenen UI-Elemente und Interaktionsmuster, die einige beliebte Apps auf Android verwenden. 

Es gibt eine Reihe von Bibliotheken, mit deren Hilfe Sie die oben genannten Muster problemlos implementieren können. ZB:

  1. GreenDroid - https://github.com/cyrilmottier/GreenDroid
  2. ActionBarSherlock - https://github.com/JakeWharton/ActionBarSherlock
  3. Android View Badger - https://github.com/jgilfelt/Android-viewbadger - Wird für Benachrichtigungen verwendet
  4. NineOldAndroids - https://github.com/JakeWharton/NineOldAndroids - Verwenden Sie die Animations-API von HoneyComb bis zur Version 1.0
  5. Ignition: https://github.com/kaeppler/ignition - Viele Helfer für gängiges Android-Zeug
18
Abhinav

Eine Android-Anwendung sollte schnell sein. Nun, es ist wahrscheinlich genauer zu sagen, dass es effizient sein sollte. Das heißt, es sollte so effizient wie möglich in der Umgebung mobiler Geräte ausgeführt werden, mit begrenzter Rechenleistung und Datenspeicherung, kleinerem Bildschirm und begrenzter Akkulaufzeit. In diesem Blog stelle ich bewährte Vorgehensweisen für das Design vor für Leistung. für mehr lesen 

http://www.onsandroid.com/2014/10/Android-anwendungsgestaltung/für.html

http://www.onsandroid.com/2013/01/Android-best-practices.html

0
suresh