CtrlK
BlogDocsLog inGet started
Tessl Logo

144-java-data-oriented-programming

Use when you need to apply data-oriented programming best practices in Java — including separating code (behavior) from data structures using records, designing immutable data with pure transformation functions, keeping data flat and denormalized with ID-based references, starting with generic data structures converting to specific types when needed, ensuring data integrity through pure validation functions, and creating flexible generic data access layers. This should trigger for requests such as Improve the code with Data-Oriented Programming; Apply Data-Oriented Programming; Refactor the code with Data-Oriented Programming; Model Java data with records and pure functions; Separate Java behavior from immutable data structures; Validate data integrity with pure Java functions. Part of Plinth Toolkit

68

Quality

83%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

77%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, lean overview with a strong validation-gated workflow and clean one-level-deep reference navigation. The main weakness is actionability: the core refactoring technique is delegated to the reference rather than shown inline with executable examples.

Suggestions

Add 1-2 short inline code examples of the core refactorings (e.g., a record + pure transformation function before/after) so the apply step is actionable without forcing a reference read for common cases.

Remove the 'When to use this skill' section or the restated intro paragraph — both duplicate the frontmatter description's trigger list and pad the token budget.

Tighten step 3 with a concrete checklist of refactoring moves (e.g., 'extract record from POJO', 'replace mutating method with pure function returning a new instance') rather than the abstract 'implement selected improvements'.

DimensionReasoningScore

Conciseness

The body is lean and avoids explaining concepts Claude already knows, but the 'When to use this skill' section and the intro paragraph duplicate the frontmatter description's trigger list — minor padding that could be trimmed rather than the verbosity of a 3.

4 / 5

Actionability

Concrete executable commands ('./mvnw compile', './mvnw clean verify') and a specific reference path are present, but the core refactoring step ('Implement selected improvements using records, pure transformation functions, flat structures, and explicit validation') is abstract and delegates technique to the reference, leaving key details inline-incomplete.

3 / 5

Workflow Clarity

A 4-step sequence with explicit validation checkpoints — compile-before with 'stop immediately if compilation fails' and verify-after — provides the feedback loop the rubric requires for destructive/batch operations, matching the explicit-checkpoint anchor.

5 / 5

Progressive Disclosure

The body is a well-organized overview (What is covered, Scope, Constraints, Workflow, Reference) pointing to a single real, clearly-signaled one-level-deep reference (references/144-java-data-oriented-programming.md, verified present), giving easy navigation.

5 / 5

Total

17

/

20

Passed

Description

88%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong, comprehensive description that explicitly covers both what the skill does and when to trigger it, with concrete capability listing and natural trigger phrases. Minor weakness in trigger-term synonym coverage and slight overlap risk with sibling refactoring skills.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'separating code (behavior) from data structures using records', 'designing immutable data with pure transformation functions', 'keeping data flat and denormalized with ID-based references', 'pure validation functions', 'flexible generic data access layers' — giving comprehensive coverage rather than the 1-2 actions of a 3.

5 / 5

Completeness

Explicitly answers both — 'Use when you need to apply data-oriented programming best practices in Java' (what) and 'This should trigger for requests such as...' (when) with concrete trigger phrases, matching the anchor that requires both explicitly.

5 / 5

Trigger Term Quality

Provides natural trigger phrases ('Improve the code with Data-Oriented Programming', 'Apply Data-Oriented Programming', 'Refactor the code with Data-Oriented Programming', 'Model Java data with records and pure functions') but the variants are somewhat redundant and miss the 'DOP' abbreviation synonym, falling just short of comprehensive.

4 / 5

Distinctiveness Conflict Risk

Java-specific DOP niche with specific triggers is mostly distinct, but 'Refactor the code with Data-Oriented Programming' could overlap with general Java refactoring skills and 'Part of Plinth Toolkit' implies sibling skills, leaving minor overlap risk.

4 / 5

Total

18

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
jabrena/plinth
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.