> For the complete documentation index, see [llms.txt](https://shuras-organization.gitbook.io/csharpunitystyleguide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://shuras-organization.gitbook.io/csharpunitystyleguide/const-and-readonly.md).

# Const and Readonly

* Если нужно неизменяемое поле с уже известным значением, используем модификатор <mark style="color:blue;">`const`</mark>.
* Все "магические числа" необходимо заменять на <mark style="color:blue;">`const`</mark>.
* Если нужно неизменяемое поле значение которого вычисляется в пределах конструктора, используем <mark style="color:blue;">`readonly`</mark>.

> После компиляции поля помеченные как <mark style="color:blue;">`const`</mark> перестают существовать, а в местах обращений к ним просто подставляется их значение.
>
> Отсюда исходит и особенность, при работе с одной константой в нескольких сборках. Т.к при изменении константы, нужно перестраивать обе сборки, иначе значения будут отличаться.
