Install
$ agentstack add skill-jabrena-cursor-rules-java-144-java-data-oriented-programming ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Java Data-Oriented Programming Best Practices
Apply data-oriented programming in Java: separate data from behavior with records, use immutable data structures, pure functions for transformations, flat denormalized structures with ID references, generic-to-specific type conversion when needed, pure validation functions, and flexible generic data access layers. All transformations should be explicit, traceable, and composed of clear pure functional steps.
What is covered in this Skill?
- Separation of concerns: data structures (records, POJOs) vs behavior (utility classes, services)
- Immutability: records, final fields, transformations produce new instances
- Pure data transformations: functions depending only on inputs, no side effects
- Flat and denormalized data: ID references instead of deep nesting
- Generic until specific: Map<String,Object> for dynamic data, convert to records when processing
- Data integrity: pure validation functions returning validation results
- Flexible generic data access: generic CRUD interfaces, interchangeable implementations
Scope: The reference is organized by examples (good/bad code patterns) for each core area. Apply recommendations based on applicable examples.
Constraints
Before applying any data-oriented programming recommendations, ensure the project compiles. Compilation failure is a blocking condition. After applying improvements, run full verification.
- MANDATORY: Run
./mvnw compileormvn compilebefore applying any change - SAFETY: If compilation fails, stop immediately — do not proceed until resolved
- VERIFY: Run
./mvnw clean verifyormvn clean verifyafter applying improvements - BEFORE APPLYING: Read the reference for detailed good/bad examples, constraints, and safeguards for each data-oriented programming pattern
When to use this skill
- Improve the code with Data-Oriented Programming
- Apply Data-Oriented Programming
- Refactor the code with Data-Oriented Programming
- Apply Data-Oriented Programming
- Refactor the code with Data-Oriented Programming
- Apply Data-Oriented Programming
Workflow
- Compile project before data-oriented changes
Run ./mvnw compile or mvn compile and stop immediately if compilation fails.
- Read data-oriented reference and assess model design
Read references/144-java-data-oriented-programming.md and identify candidates for data/behavior separation and immutable transformations.
- Apply data-oriented refactorings
Implement selected improvements using records, pure transformation functions, flat structures, and explicit validation.
- Verify with full build
Run ./mvnw clean verify or mvn clean verify after applying improvements.
Reference
For detailed guidance, examples, and constraints, see [references/144-java-data-oriented-programming.md](references/144-java-data-oriented-programming.md).
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jabrena
- Source: jabrena/cursor-rules-java
- License: Apache-2.0
- Homepage: https://jabrena.github.io/cursor-rules-java/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.