objectbox / objectbox/objectbox-java

Partial objects or @Lazy

Offen
#348 0 Kommentare 7 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

enhancement
Vorherrschende Sprache
Java
Sterne
4.6k
Forks
311
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Usually, ObjectBox is superfast and even a bigger numer of unused properties does not matter. For entities containing properties containing alot of data (e.g. large byte arrays, images, etc.), we might offer a convenient solution.

  1. Partial objects are classes that can be used almost like entities, but are read-only and are tied to an entity type. Those have only a subset of the properties.

  2. @Lazy on individual properties to load expensive properties lazily.

@Lazy advantages:

  • avoids another type and thus complexity

Partial objects advantages:

  • more memory efficient if there are alot of properties

Happy to get more input on this.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Das Issue nennt keine Dateien, Tests oder Einstiegspunkte. Beginne damit, die APIs zum Laden von Entitäten und Eigenschaften zu überprüfen, um festzustellen, ob partielle Objekte oder Lazy-Eigenschaften zum bestehenden Design passen; als abgeschlossen würde die Arbeit mit einem festgelegten Ansatz, einem Implementierungsumfang und Tests für große Eigenschaften gelten.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
databases
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
20/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.