Есть много преимуществ в том, чтобы сделать эти классы неизменяемыми.
Системы обмена сообщениями имеют тенденцию быть чем-то таким, что можно легко сделать параллельным или асинхронным при их доставке.Каждый раз, когда вы вводите многопоточность, неизменность может обеспечить огромный уровень безопасности и предотвратить множество распространенных ошибок.
На мой взгляд, после отправки сообщения нет причин для изменения
Если это ваш сценарий использования, тогда я определенно склонен работать с неизменяемыми типами данных.Лично я стараюсь создавать изменяемые типы только тогда, когда есть веская причина иметь мутабильность.В противном случае я всегда предпочитаю неизменность из-за гибкости, которую он обеспечивает, и безопасности, которую он обеспечивает при улучшении систем, использующих этот тип позже (т. Е. Введение параллелизма).