Skip to content

Commit ae5e45a

Browse files
committed
Update policy around language constructs
1 parent 0f86212 commit ae5e45a

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

POLICIES.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,11 @@ References: [[1](https://github.com/exercism/java/issues/177#issuecomment-261291
4040
4141
References: [[1](https://github.com/exercism/java/issues/178)], [[2](https://github.com/exercism/java/pull/683#discussion_r125506930)]
4242

43-
### Do not make user-facing classes `final`
43+
### Minimize initial complexity in user-facing code
4444

45-
> Starter implementations and test classes should not include the `final` keyword in class declarations as it isn't strictly necessary and could be confusing to people unfamiliar with Java.
45+
> Minimize (within reason) the number of Java language constructs a user is exposed to simultaneously at the beginning of the track. Instead, introduce those constructs with examples and hints in an appropriate later exercise. Specific applications of this policy include:
46+
> - avoiding use of the `public` keyword in user-facing class declarations, method signatures, and parameter signatures;
47+
> - avoiding use of the `final` keyword in user-facing class declarations, method signatures, and parameter signatures.
4648
4749
### Ignore noninitial tests
4850

0 commit comments

Comments
 (0)