``readonly`` fields can only be assigned in a class constructor. If a class has a field that's not marked ``readonly`` but is only set in the constructor, it could cause confusion about the field's intended use. To avoid confusion, such fields should be marked ``readonly`` to make their intended use explicit, and to prevent future maintainers from inadvertently changing their use.