Swift 2.2 er kommet på gaden og i seneste opdatering er der blevet lavet en masse forbedringer, men der er også sagt farvel til nogle gamle klassikere, som feks ++ operatoren. Hver gang Swift opdateres sker den slags, og det viser at Apple vitterligt hænger sig i detaljen, og så må vi andre gamle hunde lære nye tricks

Swift 2.2 oprydning

Der sker hele tiden noget med programmeringssproget Swift. Hver gang sproget opdateres forenkles det og man hænger sig i detaljer om en enkelt kommando giver mening eller ej. Hvis den bare er en smule forvirrende så ryger den ud til højre.

Og i den nye swift opdatering, er dette blandt andet sket med nogle gamle klassiske c operatorer som jeg vil påstå anvendes af stort set alle programmører der programmere i et C lignende sprog som Swift, C#, C++, PHP, Java mm

Opgør med C programmeringssproget i swift 2.2 opdateringen

C har en increment operator eller en decrement operator som hedder ++ eller –, dens funktion er at tælle en given variabel op eller ned med 1.

// Jeg har en variabel som er et heltal
var etTal = 0

// Jeg tæller variablen op med en
etTal++

// Hvilket er det samme som at skrive
etTal = etTal + 1

// Eller man kan skrive det sådan her
etTal += 1

 

Kært barn har altså mange navne, og der er mange måder man kan lægge en til på.

++ Operatoren kan stå enten foran eller bagved variablen afhængig af om værdien skal lægges til først eller bagefter. I teorien er det mere korrekt at skrive ++etTal end etTal++

++ er ikke godt nok til Swift

Swift 2.2 opdateringen kræver at hvis du har brugt ++ eller – et sted i din kode, så skal du ændre dette inden Swift 3.0 kommer på gaden. og det betyder også at den gamle C måde at skrive for løkker på også forsvinder i Swift sproget.

Så har du brugt den her måde at skrive en for løkke på :

// Den gode gamle måde at skrive en C for løkke på
for var i = 1; i <= 10 ; i++ {
     print ("Tallet \(i)")
}

// Så skal du ændre dette til
for i in 1...10 {
     print ("Tallet \(i)")
}

Xcode hjælper dig

Hvis du bruger nogle af de her c agtige ting, skal du ikke gå i panik. Din kode virker stadig men Xcode giver dig fejl fordi funktionerne er markeret som udgående (deprecated), hvilket er en slags forvarsel på at det går nok nu, men det går ikke ved næste version af Swift, som i øvrigt forventes at være version 3.0

Vi gamle hunde skal lære nye tricks

Jeg har brugt ++ i flæng gennem mange mange år. Og da den operator er så almindelig at den i dag anvendes i andre programmeringssprog, så har jeg svært ved at se at den skulle være et stort problem.

Men Apple er konsekvent, de vil have et rent programmeringssprog. Og så dur det ikke at man både kan skrive ++i og i++ og få det samme resultat.

Og swift skal være et rent sprog, og bare “fordi at sådan har vi altid gjort det” er ikke et godt nok argument for Apple.

Hvad syntes du?

Similar Posts