Details
-
Improvement
-
Status: Resolved
-
Normal
-
Resolution: Duplicate
-
None
-
Code Clarity
-
Normal
-
All
-
None
-
Description
Cassandra has the code style rules regarding the classes import order: https://cassandra.apache.org/_/development/code_style.html
Importing all classes from a package or static members from a class leads to tight coupling between packages or classes and might lead to problems when a new library version introduces name clashes. The advantage of explicitly listing all imports from a package is that you can tell at a glance which class you meant to use, which does reading and refactoring the source code that much easier.
The checkstyle that is already used for checking the source code has a such check and this check may be added to the config both for the production and test source code:
https://checkstyle.sourceforge.io/config_imports.html#AvoidStaticImport
Besides adding a new checkstyle rule it may be more convenient for those community members that are working with the code to reflect the same rule in the IDE's inspection profiles (if it's possible), thus using the 'optimize imports' will produce the same results on each execution as the checkstyle does.
Summary:
- add new checkstyle rule;
- update IDE's appropriate built-in inspections configurations;
- update development code-style web page and wiki;
Attachments
Issue Links
- relates to
-
CASSANDRA-17925 Java source code should have sorted imports as defined in the codestyle
- Patch Available
- links to