Skip to content

Commit 3a96b77

Browse files
committed
docs: add java lombok conventions to README.md
1 parent 4bdc827 commit 3a96b77

1 file changed

Lines changed: 14 additions & 1 deletion

File tree

README.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,4 +125,17 @@ The following are lists of conventions that either *should* be followed or *must
125125
- Should explain **what** the code does and maybe **why**, but never **how**
126126
- Comments:
127127
- Should be avoided except for Javadoc
128-
- Necessary information regarding behavior should be added as Javadoc instead (e.g. `@apiNote`, `@implNote`, `@implSpec`)
128+
- Necessary information regarding behavior should be added as Javadoc instead (e.g. `@apiNote`, `@implNote`, `@implSpec`)
129+
- Lombok should be used to reduce boilerplate code and increase readability:
130+
- Generation for:
131+
- [Getters/Setters](https://projectlombok.org/features/GetterSetter)
132+
- [equals()/hashCode()](https://projectlombok.org/features/EqualsAndHashCode)
133+
- [Constructors](https://projectlombok.org/features/constructor)
134+
- [Builders](https://projectlombok.org/features/Builder) including with [inheritance](https://projectlombok.org/features/experimental/SuperBuilder)
135+
- [Loggers](https://projectlombok.org/features/log)
136+
- [Utilities](https://projectlombok.org/features/experimental/UtilityClass)
137+
- [Exceptions](https://projectlombok.org/features/experimental/StandardException)
138+
- Can be used to set access levels of methods ([Getters/Setters](https://projectlombok.org/features/GetterSetter) and [Constructors](https://projectlombok.org/features/constructor))
139+
- Can be used with annotations on methods and constructors using [onX](https://projectlombok.org/features/experimental/onX)
140+
- Can be used to include or exclude fields for [equals()/hashCode()](https://projectlombok.org/features/EqualsAndHashCode)
141+
- Other annotations than the ones mentioned above should not be used as some are difficult to comprehend or maintain

0 commit comments

Comments
 (0)