Firestore (Android)

Aperta
#162 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
20/100
Tipo di issue
Documentazione
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
firebase, kotlin

Direzione di ricerca

L’issue contiene una descrizione di invio di un progetto per la libreria Firestore Android, ma non indica alcun file del repository, test o punto di ingresso. Esamina prima la gestione esistente degli invii di progetti su firebaseopensource.com e determina se questo contenuto debba essere aggiunto o aggiornato; il lavoro è completato quando l’invio è rappresentato secondo il formato stabilito dal sito.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

needs-info

Link to project (GitHub): https://github.com/natario1/Firestore

Describe the project in 2-3 sentences: A lightweight, efficient library to manage Firestore model data as reactive, observable objects that adapt to your Firestore schema and provide type safety and efficiency. Written in Kotlin, with built-in data-binding and Parcelable support.

Why would Firebase developers be interested in this project?: The library is a needed companion to the official Firestore SDK. It uses annotation processing to generate type-safe, null-safe, efficient (no reflection) objects around your Firestore model. It leverages Kotlin syntax, so declaring a property is as simple as var name: String by this.

Controlling the model class lets the engine do many things much more efficiently, for example:

  • parsing data from snapshot: the library will cache and reuse as many objects as possible, plus use generated setters instead of reflection
  • saving data to server: saves time and bandwidth by keeping track of dirty fields and uploading them, instead of the whole object.

In addition, each model class automatically offers a @Parcelable implementation and it works with Android's databinding out of the box, by simply declaring fields as bindable:

@FirestoreClass
class Message : FirestoreDocument() {
    // You can use {message.text} and {message.comment} in XML layouts
    // and they will be updated automatically when the model changes.
    @get:Bindable var text: String by this
    @get:Bindable var author: String by this
}
Lingua principale
TypeScript
Stelle
127
Fork
49
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di firebase/firebaseopensource.com

Tutte le issue di firebase/firebaseopensource.com

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.