Onveranderlijk Type

Schrijver: Lewis Jackson
Datum Van Creatie: 8 Kunnen 2021
Updatedatum: 1 Juli- 2024
Anonim
TUPLES in Python (Create, Pack, Unpack, Access, Update, Remove, Check, Loop, Merge, Sort)
Video: TUPLES in Python (Create, Pack, Unpack, Access, Update, Remove, Check, Loop, Merge, Sort)

Inhoud

Definitie - Wat betekent Immutable Type?

Een onveranderlijk type, in de con van C #, is een type object waarvan de gegevens niet kunnen worden gewijzigd nadat ze zijn gemaakt. Een onveranderlijk type stelt de eigenschap of status van het object in op alleen-lezen omdat het niet kan worden gewijzigd nadat het tijdens de initialisatie is toegewezen.

Onveranderlijke typen zijn ontworpen voor efficiënt geheugenbeheer en een hogere snelheid, waardoor ze geschikt zijn voor objecten met synchronisatievereisten. Immutability zorgt voor een betere leesbaarheid van de code door wijzigingen aan te brengen in de zichtbaarheid van de programmastatus en door de operaties die van status veranderen te isoleren van bewerkingen die dat niet doen. Onveranderlijke typen bieden een hogere beveiliging dan muteerbare typen.

Een onveranderlijk type wordt gebruikt wanneer gegevens moeten blijven bestaan ​​nadat ze eenmaal zijn toegewezen, maar zonder dat de gegevens in de toekomst moeten worden gewijzigd. Omdat onveranderlijke objecten hun status niet veranderen, zijn ze nuttiger in multithread- en multiprocess-scenario's, omdat meerdere threads een object kunnen lezen of schrijven, wat race-omstandigheden en synchronisatieproblemen kan veroorzaken.


Een inleiding tot Microsoft Azure en de Microsoft Cloud | In deze handleiding leert u wat cloud computing inhoudt en hoe Microsoft Azure u kan helpen bij het migreren en runnen van uw bedrijf vanuit de cloud.

Techopedia verklaart Immutable Type

Objecten van onveranderlijk type kunnen worden gemaakt met behulp van de sleutelwoorden "const" en "readonly". Hoewel alleen-lezen modificatie van een veld binnen de constructor toestaat, doet const dat niet. Nummers, strings en null kunnen alleen worden gebruikt als const-velden, die echt onveranderlijk zijn. Readonly is niet echt onveranderlijk omdat het schrijven slechts eenmaal toestaat. Het is dus geen compilatieconstante zoals het const-veld. Echt onveranderlijke objecten veranderen nooit hun interne toestand en zijn daarom inherent draadveilig.

De klasse System.String is een onveranderlijk referentietype in de .NET Framework-klassenbibliotheek. Deze klasse maakt intern een nieuw stringobject voor elke stringmanipulatie. De inhoud van objecten van dit type verandert niet, hoewel de syntaxis het lijkt alsof de inhoud kan worden gewijzigd. Bovendien wordt string gebruikt als hashtabetsleutel voor het berekenen van hashwaarden om het risico van beschadiging van de hash-gegevensstructuur te voorkomen.

Het belangrijkste nadeel van onveranderlijke typen is dat ze meer bronnen nodig hebben dan andere objecttypen.


Deze definitie is geschreven in de con van C #