In Java, Protobuf types are generated immutable. This approach has a lot of benefits. We should consider tweaking the Dart code generation to make Dart Protobuf types immutable as well.