Lektion 2 Opsamling mm
God tone Der er indlagt spørge sessioner
Lektion 2 - Agenda Programmering for Lidt ændringer til teknikken, herunder hvordan du genser en lektion Lidt generelle tilbagemeldinger fra lektion 1 Recap, gentagelse af hvad vi gennemgik i mandags Kommentarer i xcode Lidt mere om variabler (tuple / enum) Operatorer if selektion switch selektion
Efter lektion 1 Ændring i teknik - Du kan se videoen på lektionen, frem for via WebinarJam. Nogle gange kan det blive for indforstået, når jeg fortæller. Mere forklaring af de enkelte ord der bruges i lektionen.. Det kommer på bidblog.dk
De mange speciel tegn i xcode : Den lodrette streg som anvendes til boolsk OR : Alt + i [] : De firkantede taster der anvendes i array : Alt + 8 og Alt + 9 \ : Bagvendt skråstreg der anvedes i print kommandoen (kaldt en backslash) : Shift + Alt + 7 {} : Væltede tuborg eller blød klamme som anvendes bla til en if : Alt + Shift +8 og Alt + Shift + 9
Fra lektion 1 teknik. Programmering for Vi lærte at alt ender i binære koder At alt enten kun kan være sandt eller falsk fordi mindste enhed i computeren er en strøm. Enten er der strøm eller også er der ikke strøm. (binært 1 og 0) Jo flere kontakter vi har jo mere abstrakt kan vi være og det er derfor vi kan lave variabler der har sigende navne At en kompiler konverterer vores abstrakte programkode ned til binær program kode som computeren kan forstå. Vi lærte lidt om hvordan RAM i vores computer bruges til variabler.
Det binære bøvl Programmering for Vi regnede binært, og Henrik må med skamme indrømme at han flere gange regner forkert.. Skamme skamme. Vi lærte at når vi er binær så kan vi tænke boolsk, og vi bruger de binære boolske gates AND, OR, NOT og binært XOR.
30 sekunders buuuh
3 grundtrin Tildeling / Assignment Sammenligning / Selection Gentagelse / Iteration
Tildeling Vi lærte om grund typerne Int, UInt, Double, Float, String, Bool Vi lærte at Variabler skal have en værdi og vi kan enten angive typen eller give dem en værdi når vi opretter dem. Det kaldes at initialisere en variabel når vi giver den værdien første gang. Vi lærte at Swift er streng når det kommer til typer og vi lærte at vi bliver nød til at typecaste (at lave en type om til en anden) en type til en anden hvis vi skal blande typer.
Sammenligning Programmering for Vi lærte at sammenligning basalt set skal ende med et binært boolsk resultat. Er resultatet af en sammenligning Sandt eller Falsk (true eller false) (tændt eller slukket)
Vi lærte om iteration Vi lærte at man kan gentage program kode i en løkke. (vi skal se på flere løkker i næste uge)
Array og Stak Vi lærte at en variabel kan erklæres som et array. Vi lærte at et array kan indeholde flere værdier af samme type. Vi lærte at der var noget der kom frem når vi trykkede. i xcode på et array (array.removefromlast) Vi lærte at en stak er en slags array hvor man altid indsætter nye værdier i enden og fjerner dem igen.
Så fortsætter vi med noget nyt, er der spørgsmål inden vi går i gang?
3 typer kommentarer i xcode // er en linje kommentar. /* */ er flere linje kommentar. /// er en dokumentations kommentar. Eksempel.. i xcode..
Tuple En Tuple er en række værdier i paranteser adskilt af kommaer. ( Henrik, 45, true) En Tupel kan have labels så de er mere sigende (navn: Henrik, alder:45, elskerlakrids:true)
En tupel som variabel var entuple = (navn: Henrik, alder:45) print( Jeg hedder \(entuple.navn) og er \ (entuple.alder) år gammel ) Bruges når en funktion skal returnere flere værdier (mere om det i næste uge) eksempler i XCode.
Forskel på en tupel og et array. Et Array skal være samme type En Tuple kan være blandede typer En tuple er IKKE en Collection (en speciel slags typer som har til formål at indeholder ande typer i en avanceret og optimeret måde Dem kommer vi til senere)
Enum Enumerated values
Logisk værdi for et tal En enum er et fortløbende tal, med en logisk værdi. Vi ser den logiske værdi når vi skriver koden Værdien der gemmes internt er et tal så det fylder mindre. Xcode hjælper os når vi skriver vores kode.. Eksempel.
Optionals! var feb:måneder feb = Måneder(rawValue: 2) < giver en fejl feb = Måneder(rawValue: 2)! Eksempel i Xcode.. Hvis du skrive Måneder(rawValue: 15) ville enum ikke returnere noget og det fanger du med! Vi skal lære MEGET mere om Optionals senere, men det er mere nørdet.
Spørgsmål? Programmering for
Operatorer Operatorer gør noget med værdier De matematiske operatorer + Addition - Subtraktion * Multiplikation / Division % = Rest division eks (10 % 3 giver 1 fordi 3x3 = 9 og der er en rest på 1) Husk altid at sikre dig at du ikke kommer til at dividere med nul.
Tildelings operatorer A = B : A sættes til værdien af B A += B : A = A + B A -= B : A = A - B *= : A = A * B
Sammenlignings operatorer A == B : Sandt hvis A er lig med B A!= B : Sandt hvis A er forskellig fra B (not equal) A > B : Sandt hvis A er større end B A < B : Sandt hvis A er mindre end B A <= B : Sandt hvis A er mindre end eller lig med B A >= B : Sandt hvis A er større end eller lig med B
Den specielle 3 delte operator Er en tildelig og en sammenligning på samme tid Syntax: A = A > B? A : B Eksempel i xcode
Spørgsmål til operatorer?
Selektion - if if <sammenligning> { } gør-noget if <sammenligning> { gør-noget } else { gør-noget-andet }
if skal altid have {} omkring hvad den skal!
if-else-if-else-if-else-if if tal = 1 { gør-noget } else if tal = 2 { gør-noget-andet } else if tal = 3 { gør-noget-tredje }
Switch I stedet for if-else if -else if else if Eksempel i xcode
Spørgsmål? Programmering for
Fri leg i weekenden. Jeg uploader min eksempel fil til lektionen så du kan downloade den. Prøv at eksperimentere med.. Variabler Operatorer Enums Tuples if, else, else if
På mandag Løkker (Iteration) Funktioner (håber jeg vi når) Og så får du en opgave hvor jeg ikke giver dig løsningen, hvor du skal kombinere flere af de ting du har lært om nu. (Hvis vi når funktioner)
God Weekend! Programmering for