Code Review Standards

general

(minimize-scope)

(prefer-foreach)

(prefer-libraries)

(avoid-primitive-fp)

(prefer-primitives)

(avoid-string-usage)

(string-concatenation)

(refer-by-interface)

(interface-over-reflection)

(naming)

objects

(static-factory-methods)

(use-builder)

(private-constructor)

(dependency-injection)

(unnecessary-objects)

(avoid-finalizers)

(try-with-resources)

(hashcode-equals-contract)

(override-tostring)

(implement-comparable)

classes and interfaces

(minimize-accessibility)

(accessor-methods)

(minimize-mutability)

(composition-over-inheritance)

(prohibit-inheritance)

(interface-over-abstract)

(interface-only-types)

(hierarchies-over-tagged)

(favor-static)

(limit-source-files)

generics

(no-raw-types)

(no-unchecked-warnings)

(lists-over-arrays)

(generic-types)

(generic-methods)

enums and annotations

(enums-over-static)

(enums-over-ordinals)

(enum-set)

(enum-map)

(prefer-annotations)

(user-override-annotation)

(marker-interface)

lambdas and streams

(method-references)

(standard-interfaces)

(streams-use-cases)

(streams-side-effect-free)

(collection-over-stream)

methods

(check-parameters)

(defensive-copies)

(method-design)

(overloading)

(varargs)

(return-empty)

(return-optional)

(write-doc-comments)

exceptions

(exception-condition)

(right-exception-type)

(avoid-checked-exceptions)

(exception-appropriate-abstraction)

(document-exceptions)

(include-exception-information)

(failure-atomicity)

(dont-ignore-exceptions)

concurrency

(synchronize-access)

(avoid-excessive-synchronization)

Last updated

Was this helpful?