Ich habe letztes Jahr ernsthaft mit der Entwicklung von Android begonnen, aber es hat lange gedauert, bis ich die Bibliotheken kennengelernt habe, die zum Einatmen der Produktentwicklung verwendet werden. Dieser Artikel fasst die beliebtesten Bibliotheken für diejenigen zusammen, die gerade erst mit der Android-Entwicklung beginnen.
"Häufig verwendet" ist völlig subjektiv.
AAC
Abkürzung für Android Architecture Components, eine der Komponenten von Android Jetpack
https://developer.android.com/jetpack?hl=JA
Hier sind einige der am häufigsten verwendeten Bibliotheken, die in AAC enthalten sind.
Data Binding Library
https://developer.android.com/topic/libraries/data-binding/?hl=JA
Eine Bibliothek, die buchstäblich für die Datenbindung verwendet wird. Ich benutze es oft für die Entwicklung mit MVVM. Dies ist sehr praktisch, da Sie Objekte mit LiveData an XML und bidirektionale Daten binden können, was später beschrieben wird.
Lifecycle
https://developer.android.com/topic/libraries/architecture/lifecycle?hl=JA
Verwalten Sie den Lebenszyklus von Aktivitäten und Fragmenten. LifecycleObserver ist sehr praktisch, da Sie die Lebenszyklusereignisse von Aktivität und Fragment in anderen Klassen überwachen können.
LiveData
https://developer.android.com/topic/libraries/architecture/livedata?hl=JA
LiveData kann mit dem Lebenszyklus verknüpft werden, um Sie über Wertänderungen zu informieren. Ich habe den Teil ersetzt, der Rx Subject verwendet hat, um zwischen Ebenen mit LiveData zu benachrichtigen. Es ist auch nützlich für die bidirektionale Datenbindung.
Room
https://developer.android.com/topic/libraries/architecture/room?hl=JA
Room bietet eine Schnittstelle, über die Sie SQLite reibungslos verwenden können. Ich kann nichts sagen, weil ich es nicht so hart benutzt habe.
ViewModel
https://developer.android.com/topic/libraries/architecture/viewmodel?hl=JA
ViewModel kann UI-bezogene Daten in Bezug auf den Lebenszyklus von Aktivität und Fragment verwalten. Ich denke, der Kontext unterscheidet sich ein wenig vom sogenannten MVVM ViewModel, aber er ist sehr nützlich für die Anwendungsentwicklung mit MVVM. Ich benutze es oft.
Navigation
https://developer.android.com/topic/libraries/architecture/navigation.html?hl=JA
Fragmentübergänge können in XML verwaltet werden. Durch die Einführung eines Plug-Ins namens "safeArgs" ist dies praktisch, da Sie die Datenübertragung zwischen Fragmenten einfach definieren können.
Paging
https://developer.android.com/topic/libraries/architecture/paging/?hl=JA
Sie können das übliche unendliche Bildlauf-Paging einfach (?) Implementieren.
Ich sehe oft Konfigurationen wie "okhttp + Nachrüstung + RxJava (RxKotlin) + RxAndroid + moshi (gson)". In letzter Zeit sehe ich oft asynchrone Verarbeitung mit Coroutine.
okhttp
https://github.com/square/okhttp
Es ist de facto. Ohne das kann ich nicht leben.
retrofit2
https://github.com/square/retrofit
Eine Bibliothek, die mit REST gut umgehen kann. Wird oft mit okhttp verwendet.
Es scheint, dass Jackson vor langer Zeit verwendet wurde?
gson
https://github.com/google/gson
Hergestellt von Google. Ich sehe es oft. Ich benutze Deserializer für komplexe Anforderungen, beispielsweise wenn ich es selbst schreiben muss.
moshi
https://github.com/square/moshi
Aus Quadrat. In letzter Zeit benutze ich dies ausschließlich.
glide
https://github.com/bumptech/glide
Es ist für die Anzeige von Bildern unverzichtbar. Ich sehe es oft.
picasso
https://github.com/square/picasso
Ich sehe das auch oft. Es scheint, dass Gleiten physischer genutzt wird.
Rx
RxJava
https://github.com/ReactiveX/RxJava
Sie können Code für das Paradigma der reaktiven Programmierung schreiben. Die Lernkosten sind hoch, aber es ist sehr bequem, sich daran zu erinnern. Die Leute neigen dazu, es als eine Bibliothek für die asynchrone Verarbeitung zu betrachten. In letzter Zeit spüre ich den Trend, es durch andere Technologien zu ersetzen, aber es wird immer noch an verschiedenen Orten verwendet, und persönlich ist es ohne dies ziemlich schmerzhaft.
RxKotlin
https://github.com/ReactiveX/RxKotlin
Eine Kotlin-Erweiterung für RxJava. Wenn Sie Rx mit Kotlin verwenden, lassen Sie es uns vorstellen.
RxAndroid
https://github.com/ReactiveX/RxAndroid
Es ist für die asynchrone Kommunikation mit RxJava in der Android-Entwicklung unverzichtbar.
RecyclerView
groupie
https://github.com/lisawray/groupie
Es ist heutzutage zu beliebt und ich habe Angst. Aber es ist auf jeden Fall bequem.
epoxy
https://github.com/airbnb/epoxy
Hergestellt von Airbnb. Sie können problemlos eine komplexe RecyclerView erstellen. Es ist einfach mit der Datenbindung zu verwenden. Gute Kompatibilität mit anderen Airbnb-Bibliotheken wie MvRx.
timber
https://github.com/JakeWharton/timber
Ein Wrapper für android.util.Log. Niemand sagt es mir, aber jeder benutzt es (subjektiv). Sie können die Funktionen je nach Build-Typ wechseln.
leakcanary
https://github.com/square/leakcanary
Hergestellt aus zuverlässigem und bewährten Quadrat. Erkennt und benachrichtigt Sie über Speicherlecks in Ihrer App. Ich habe das Gefühl, dass es selbstverständlich ist.
stetho
https://github.com/facebook/stetho
Wenn Sie in okhttp beißen, können Sie Kommunikationsprotokolle usw. in Chrome sehen. Sehr angenehm.
flipper
https://github.com/facebook/flipper
Hergestellt von Facebook. Es kann auch auf anderen Plattformen als Android verwendet werden. Ich habe noch nie jemanden gesehen, der es benutzt. Ist es gut mit Stetho?
Hyperion-Android
https://github.com/willowtreeapps/Hyperion-Android
Sie können verschiedene Dinge tun. Weitere Informationen finden Sie in diesem Artikel.
DI
Abkürzung für Dependency Injection. Es ist heutzutage selbstverständlich. Referenz
dagger2
https://github.com/google/dagger
Hergestellt von Google von Square. Es wird wahnsinnig benutzt. Ich denke, die Lernkosten sind ziemlich hoch.
koin
https://github.com/InsertKoinIO/koin
DI-Bibliothek für die Kotlin-Implementierung. Ich spüre die Dynamik, wenn die Namenserkennung zunimmt. Ich mag es, weil es leichter zu verstehen ist als Dolch.
mockito
https://github.com/mockito/mockito
Ein spöttischer Rahmen. Es gibt ein Gefühl von De-facto.
mockk
https://github.com/mockk/mockk
Eine spöttische Bibliothek für die Implementierung von Kotlin. Ich bin vor kurzem gekommen, um es zu sehen.
truth
https://github.com/google/truth
Eine Assertionsbibliothek von Google. Es scheint, dass es auch im Android X-Testdokument übernommen wird.
ThreeTenABP
https://github.com/JakeWharton/ThreeTenABP
Eine Bibliothek, die es einfach macht, Daten unter Android zu verwalten. Niemand sagt es mir, aber es ist sehr praktisch und viele Leute benutzen es.
Recommended Posts