Intellij Flashcards
Usefull Intellij plugins:
**Jalopy- intellij plugin for formatting the code
**Cucumber for java - testing tools with step definitions written in Java.
**Gherkin -Adds support for the Gherkin language, which is used by the Cucumber testing tool.
**Lombok- generates bolierplate code at COMPILE TIME (for having cleaner code)
–> You need to ENABLE ANNOTATION Processors from .Intellij –> Preferences–> Build–>Compiker–>ENABLE ANNOTATION Processors
@Getter and @Setter
@FieldNameConstants
@ToString
@EqualsAndHashCode(can explcude properties in order to avoid circular ependencies with JPA)
@AllArgsConstructor, @RequiredArgsConstructor(for all fields that are final or marked with @NonNull) and @NoArgsConstructor
@Log, @Log4j, @Log4j2, @Slf4j, @XSlf4j, @CommonsLog, @JBossLog, @Flogger, @CustomLog
@Data(GETTER+SETTER+ToString+EqualAndHashcode+RequiredArgsConstructor)!!!!!!!!!!!!!!!!!!!!!!!!!!!!(No constructor will be generated if explicitly declared)
@Builder!!!!! create a builder pattern for pbejct creation(Eg : MyClass.builder().name(“MyName”).age(“11”).build())
@SuperBuilder
@Singular
@Delegate
@Value(the immutable variant of Data; makes all fields private and final)
@NotNull-> set on a method parameter throws NPE if the param is null
@Accessors
@Wither
@With
@SneakyThrows–> throws checked exceptions without having to declare them in the methods signature
@StandardException
@val (declares final local variable)
@var(declares mutable local variable)
experimental @var
@UtilityClass
@Log –> create a java uitil logger (not the best)
@Slf4j –>create a SLF4j logger ( a generic logging facade) (SpringBoot 1s default is LoggBack)
Lombok config system
Code inspections
Refactoring actions (lombok and delombok)