This page is not intended to include a comprehensive list of everything that should be checked during a code review for CPS. Instead it attempt to list to less well known or very often (forgotten) rules that we should apply in CPS to keep the high quality of our production and test code.
Simple is Good, Complex is Bad
There is one simple rules that applies to all code and can often be used to decide between several coding solutions:
Description | Bad | Good |
---|---|---|
Optional<String> optionalResponseBody = Optional.ofNullable(responseEntity.getBody()) .filter(Predicate.not(String::isBlank)); return (optionalResponseBody.isPresent()) ? convert(optionalResponseBody.get()) : Collections.emptyList(); | String responseBody = responseEntity.getBody(); if (responseBody == null || responseBody.isBlank()) { return Collections.emptyList(); } return convert(responseBody); |
Common Mishaps
# | Description | Bad | Good |
---|---|---|---|
1 | Don't forget to check the copyright (add/modify new calendar year to existing copyright if needed) | /* * ============LICENSE_START======================================================= * Copyright (C) 2021 Other Company * Modifications Copyright (C) 2021-2022 Nordix Foundation | |
2 | Overuse of constant for String Literals (that don't add value) Also duplication is not a good reason, it often 'smells like' a method that should be extracted out instead |
|
|
3 | Avoid using ! when else block is implemented |
| if (x==null) { report error } else { do something } |
4 | No need for else after return statement |
| if (x==true) { return something; |
...