Identify and apply data-oriented programming best practices in Java to improve code clarity, maintainability, and predictability by strictly separating data structures from behavior and ensuring all data transformations are explicit, pure, and traceable.
Core areas: Records for immutable data carriers over mutable POJOs, data-behavior separation with pure static utility classes holding operations, pure functions for data transformation that depend only on inputs and produce no side effects, flat denormalized data structures with ID-based references over deep nesting, generic Map representations for dynamic schemas converted to specific types when needed, Optional...
Prerequisites: Run ./mvnw compile before applying any changes. If compilation fails, stop immediately — do not proceed until the project compiles successfully.
À utiliser lorsque vous devez appliquer les meilleures pratiques de programmation orientées données en Java, notamment séparer le code (comportement) des structures de données à l'aide d'enregistrements, concevoir des données immuables avec des fonctions de transformation pures, conserver les données plates et dénormalisées avec des références basées sur l'ID, commencer par des structures de données génériques se convertissant en types spécifiques si nécessaire, garantir l'intégrité des données grâce à des fonctions de validation pures et créer des couches d'accès aux données génériques flexibles. Une partie du projet skills-for-java Source : jabrena/cursor-rules-java.