26 Ocak 2023 Perşembe

Const vs Readonly

C#'ta const ve readonly keywordleri arasındaki temel fark, const'ın atama sırasında tanımlanması gerekirken, readonly alanının run-time da  tanımlanabilmesidir.

Const'lar dolaylı olarak statiktir, readonly değerlerin ise statik olması gerekmez.

Ayrıca, Assemliede çalışırken const ve readonly farklı davranışlara sahiptir. Constlar, kendisini kullanan her assemblyde kopyalanırken, readonly alanlar assemblyler arasında paylaşılır.


Assemblies


Örneğin, A assembly ve B assembly isminde iki adet assemblye sahip olduğumuzu düşünelim
A assembly constantı tanımlasın


Hem A assembly hem de B assembly aynı constantı kullanır.

Yukarıdaki constant 15 olarak değiştirirsek, her iki assemblyde de yeniden re-compile gerekir.

Öte yandan, statik readonly alanla, yalnızca A assembly yeniden re-compile yeterlidir.



En uygun kullanım 


Hiç yorum yok:

Yorum Gönder