Kategorien, Pakete und Repositories suchen

Paketdetailsv0.1.2

data_class

Experimenteller Support für Datenklassen in Dart mit pkg:macros

30-Tage-Downloads
51
Likes
60
Pub-Punkte
50

Paket installieren

flutter pub add data_class

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Das data_class-Paket bietet experimentellen Support für Datenklassen in Dart über Makros und ermöglicht eine prägnante und boilerplatefreie Definition von immutable Datenstrukturen. Es vereinfacht die Erstellung von Klassen, die hauptsächlich Daten speichern, indem es erforderliche Methoden wie `toString`, `hashCode` und `operator ==` automatisch generiert. Dies verbessert die Codelesbarkeit und verringert Fehler durch manuelle Implementierung. Speziell für Entwickler konzipiert, die einen sauberen Ansatz für die Datenmodellierung in Dart-Anwendungen suchen, integriert sich das Paket mit modernen Dart-Tools und unterstützt JSON-Serienisierungsworkflows.

Anwendungsfälle

  • Definition immutabler Datenmodelle
  • Boilerplate in Datenklassen reduzieren
  • JSON-Serialisierung vereinfachen
  • Reine Domänenmodelle erstellen
  • Zustandsverwaltung vereinfachen
  • Verbesserung der Code-Wartbarkeit

Hauptmerkmale

  • Automatische Generierung von `toString`, `hashCode` und `==`
  • Unterstützung für immutable Datenklassen
  • Integration mit Dart-Makros
  • Minimales Boilerplate
  • Eingebaute JSON-Serienisierung
  • Saubere, lesbare Klassendefinitionen

Geeignet für

  • Dart-Entwickler, die moderne Dart-Versionen verwenden
  • Projekte, die saubere Datenmodellierung erfordern
  • Zustandsverwaltung mit immutable Daten
  • JSON-heavy applications
  • Teams, die Code-Klarheit und Wartbarkeit priorisieren
  • Prototyping oder schnelle Entwicklung

Hinweise

  • Der experimentelle Status kann die Stabilität beeinflussen
  • Erfordert Dart mit Makro-Unterstützung
  • Begrenzte Ökosystem-Adoption
  • Könnte Aktualisierungen mit Änderungen am Dart SDK erfordern
  • Nicht geeignet für veraltete Dart-Projekte
  • Potenzielle Lernkurve für Makro-Verwendung

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

data_class

build pub package License: MIT

Support for data classes in Dart using macros.

✨ Features

🪨 const constructors with required, named parameters

🖨️ copyWith with optional, nullable, named parameters

✨ toString for an improved string representation

☯️ operator== and hashCode for value equality

🧑‍💻 Example

import 'package:data_class/data_class.dart';

@Data()
class Person {
  final String name;
}

void main() {
  // 🪨 Create a const instance with required, name parameters.
  const dash = Person(name: 'Dash');

  // 🖨️ Create copies of your object.
  final sparky = dash.copyWith(name: 'Sparky');

  // ✨ Human-readable string representation.
  print(dash); // Person(name: Dash)
  print(sparky); // Person(name: Sparky)

  // ☯️ Value equality comparisons.
  print(dash == dash.copyWith()); // true
  print(dash == sparky); // false
}

🚀 Quick Start

  1. Add package:data_class to your pubspec.yaml

    dependencies:
      data_class: any
    
  2. Enable experimental macros in analysis_options.yaml

    analyzer:
      enable-experiment:
        - macros
    
  3. Use the @Data annotation (see above example).

  4. Run it

    dart --enable-experiment=macros run main.dart
    

*Requires Dart SDK >= 3.5.0

Kategorien

Abhängigkeiten

Abhängigkeiten 3 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.