You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Basically all object types in Polaris have mutable attributes, either directly (via setters) or indirectly (via collections). This is known to be prone to programming issues. All value types should really be immutable types - none of the elements of a value type should be mutable. Libraries like immutable are built to support this.
immutable is superior to both Java records and Lombok. While the direct attributes of Java records are not changeable, the objects (collections!) referenced from Java records are not enforced to be immutable. Lombok provides similar functionality than immutables, but adds bytecode (and functions/methods) that is not present in the source code, which makes for example debugging harder.
The text was updated successfully, but these errors were encountered:
Describe the bug
Basically all object types in Polaris have mutable attributes, either directly (via setters) or indirectly (via collections). This is known to be prone to programming issues. All value types should really be immutable types - none of the elements of a value type should be mutable. Libraries like immutable are built to support this.
immutable is superior to both Java records and Lombok. While the direct attributes of Java records are not changeable, the objects (collections!) referenced from Java records are not enforced to be immutable. Lombok provides similar functionality than immutables, but adds bytecode (and functions/methods) that is not present in the source code, which makes for example debugging harder.
The text was updated successfully, but these errors were encountered: