Citat:
Ursprungligen postat av danjel
Och för att ta ett exempel så används nu ofta ( de i php så bekanta) "otypade" dataseten och variabler, ("var" keyword) i C#. Typningen brukar lyftas fram som en fördel för c# men det finns väl en anledning att MS delvis går ifrån det, speciellt i webbprojekt.
|
Nja, "var" i C# är inte otypat, det är typat, men exakt vilken datatyp väljs av kompilatorn beroende på vad variabeln är tilldelad med först. Om du försöker sätta dess värde till någonting annat senare så får du kompileringsfel, likaså om du försöker komma åt en egenskap eller metod som inte finns. Kort sagt: en genväg för att t.ex. slippa skriva datatypen två gånger på samma rad när man deklarerar en variabel samt skapar en ny instans av en klass samtidigt.
Däremot har "dynamic" tillkommit, och den är löst typad. Kontroll om t.ex. egenskaper, metod etc. finns sker först runtime. Smidigt t.ex. när man jobbar med anonyma klasser. Dock ingenting man använder mer än när det verkligen finns behov, bland annat just för att det ökar risken för buggar. Är dock bättre än att peta en massa med reflektion.