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.
Úselo cuando necesite aplicar las mejores prácticas de programación orientada a datos en Java, incluida la separación del código (comportamiento) de las estructuras de datos mediante registros, el diseño de datos inmutables con funciones de transformación pura, el mantenimiento de datos planos y desnormalizados con referencias basadas en ID, el inicio con estructuras de datos genéricas que se convierten a tipos específicos cuando sea necesario, la garantía de la integridad de los datos a través de funciones de validación pura y la creación de capas flexibles de acceso a datos genéricos. Parte del proyecto skills-for-java Fuente: jabrena/cursor-rules-java.