dataclasses
Dataclasses are a Python feature provided by the dataclasses module that simplify the creation of classes whose primary purpose is to store data. Introduced in Python 3.7 (PEP 557), they reduce boilerplate by automatically generating common methods. When a class is decorated with @dataclass and its fields are annotated with types, Python generates an __init__, __repr__, and __eq__ methods by default, and can also generate ordering methods if requested.
Fields in a dataclass are defined with type annotations. You can assign default values or use default_factory
Special markers include InitVar, used for constructor parameters that are not stored as attributes, and ClassVar,
Post-initialization and utilities: __post_init__ is invoked after the generated __init__ to perform extra initialization. In frozen