Photo by Reimond de Zuñiga on Unsplash
Code Smell 146 - Getter Comments
Comments are a code Smell. Getters are another code smell. Guess what?
TL;DR: Don't use getters. Don't comment getters
Problems
Comment Abusers
Readability
Getters
Solutions
Remove getter comments
Remove getters
Context
A few decades ago, we used to comment on every method. Even trivial ones
Comment should describe only a critical design decision.
Sample Code
Wrong
pragma solidity >=0.5.0 <0.9.0;
contract Property {
int private price;
function getPrice() public view returns(int) {
/* returns the Price */
return price;
}
}
Right
pragma solidity >=0.5.0 <0.9.0;
contract Property{
int private _price;
function price() public view returns(int){
return _price;
}
}
Detection
[X] Semi-Automatic
We can detect if a method is a getter and has a comment.
Exceptions
The function needs a comment, that is accidentally a getter and the comment is related to a design decision
Tags
- Comments
Conclusion
Don't comment getters.
They add no real value and bloat your code.
Relations
Credits
Photo by Reimond de Zuñiga on Unsplash
Code should be remarkably expressive to avoid most of the comments. There'll be a few exceptions, but we should see comments as a 'failure of expression' until proven wrong.
Robert Martin
This article is part of the CodeSmell Series.