Swift Tutorial: Komma igång med iOS-utveckling med Swift



I denna Swift-handledning får du en introduktion till iOS-utveckling med Swift och kommer också att förstå alla Swift-programmeringskoncept.

I denna Swift Tutorial-blogg kommer jag att presentera dig för några av Swift-grundläggande begrepp. Men innan jag går vidare skulle jag göra er bekanta med 'Vad är Swift' och hur kan du installera Swift på ditt system. Så, låt oss komma igång nu !!

I den här bloggen på Swift Tutorial skulle jag täcka följande ämnen:





Swift Tutorial: Vad är Swift?

Swift är ett programmeringsspråk som använder det bästa av C och Objective-C och är utvecklat av Apple Inc. för iOS / OS X-utveckling för att köras på många befintliga iOS 6 och OS X 10.8-plattformar.

Snabb handledning: Hur installerar jag Swift?

För att använda Swift behöver du Xcode-programvara för att köra din Swift-kodning på Playground och när du väl är bekväm med Swift kan du använda Xcode IDE för iOS / OS x applikationsutveckling.



Så förutsatt att du har ett konto på Apples utvecklarwebbplats, måste du bara gå till Ladda ner för Apple-utvecklare.

En gång går du till länken, väljer den senaste tillgängliga Xcode-versionen och laddar ner den genom att klicka på den givna länken nära skivbilden.

När du har laddat ner dmg-filen kan du installera den genom att dubbelklicka på den.



OK!! Så när du väl har din xCode, dubbelklickar du bara på den för att öppna och sedan gå till Arkiv -> Ny och välj Lekplats . Välj sedan iOS och ange lekplatsens namn. När du är klar med det klickar du på Skapa.

Xcode IDE - Snabb handledning - Edureka

Figur 1: Skapa lekplats i Xcode IDE - Swift Tutorial

Så nu när din lekplats är klar, låt oss komma igång med lite kodning!

Så, börja med att börja med grundläggande syntax och sedan skriva ett hej världsprogram.

Snabb handledning: Grundläggande syntax

  • Poletter - En token är antingen ett nyckelord , en identifierare, en konstant, en sträng bokstavlig eller en symbol.
  • Semikolon - I Swift behöver du inte skriva ett semikolon () efter varje uttalande i koden. Endast vid användning av flera påståenden på samma rad används ett semikolon som avgränsare.
  • Nyckelord - Nyckelord är reserverade ord på kodningsspråken som inte får användas som konstanter eller variabler eller något annat identifieringsnamn såvida de inte undviks med backticks (`& hellip`).
  • Bokstäver - En bokstav är huvudsakligen källkodsrepresentationen för ett värde på ett heltal, flytpunktsnummer eller strängtyp. Så, en bokstav kan vara en hel bokstav, flytande bokstav, sträng bokstavlig eller en boolsk bokstav.
  • Kommentarer - Kommentarer hjälper kompilatorer att ignorera texterna som inte ska kompileras. Flerlinjekommentarer börjar med / * och avslutas med * / medan kommentarer med en rad skrivs med // i början av kommentaren.
  • Identifierare - Swift är ett skiftlägeskänsligt språk och tillåter inte specialtecken som @, $ och% inom identifierare. En identifierare börjar med ett alfabet A till Z eller a till z eller en understrykning _ följt av fler bokstäver, understrykningar och siffror (0 till 9).
  • Vita utrymmen - Whitespace används i Swift för att beskriva blanksteg, flikar, nylinjetecken, kommentarer och också separera en del av ett uttalande från en annan. Detta hjälper kompilatorn att identifiera var ett element i ett uttalande slutar och nästa element börjar.

Hej världsprogrammet

/ * Hello World Program * / importera UIKit // Eftersom vi skapar programmet för iOS-lekplats måste vi importera UiKit var myString = 'Hello World!' -Utskrift (myString) // Semikolon som används sedan två uttalanden används tillsammans

Produktion :

Hej världen!

Nu när du har skrivit ditt första program, låt oss förstå mer om variabler och datatyper.

Bli certifierad med industriprojekt och följ snabbt din karriär

Snabb handledning: Variabler, datatyper och typgjutning

Variabler

Variabler är bara reserverade minnesplatser för att lagra värden. Det betyder att när du skapar en variabel så reserverar du lite utrymme i minnet.

var a = 42 // Deklarerande variabel var a: Int = 42 // Du kan också deklarera variabel genom att ange datatypen. låt b = 32 // Deklarera ett konstant tryck (varA)

Datatyper

Som alla andra programmeringsspråk tillhandahåller swift de inbyggda datatyperna som du kan hänvisa till i följande tabell:

Typ Typisk bitbredd Typiskt intervall
Int8 1 byte- 127 till 127
UInt8 1 byte0 till 255
Int32 4 bytes-2147483648 till 2147483647
UInt32 4 bytes0 till 4294967295
Int64 8 byte-9223372036854775808 till 9223372036854775807
UInt64 8 byte0 till 18446744073709551615
Flyta 4 bytes1.2E-38 till 3.4E + 38 (~ 6 siffror)
Dubbel 8 byte2.3E-308 till 1.7E + 308 (~ 15 siffror)

Låt mig berätta ett intressant faktum här.

I Swift behöver du inte nödvändigtvis definiera datatypen när du förklarar en variabel.

Antag att du förklarar en variabel var b = 'Hej' , då förstår Swift automatiskt det b är en Sträng typvariabel, baserat på den inmatning du har gett.

Typ gjutning

Nu kan du till och med utföra typkonvertering eller typecasting.

Du kan till exempel konvertera heltalsvärdet till ett flytvärde och vice versa.

Tänk på exgott nedan:

let a: Int = 5679 // Deklarera 2 konstanter låt b: Float = 2.9999 // Konvertera Float till Int-utskrift (“Detta tal är ett Int nu (Int (b))”) // Konvertera Int till Float-utskrift (“This numret är en flottör nu (flottör (a)) ”)

Produktion:

Detta nummer är ett Int nu 2 Detta nummer är en Float nu 5679.0

Snabb handledning: Operatörer

Operatörer är konstruktionerna som kan manipulera värdena för operanderna. Betrakta uttrycket 7 + 3 = 10, här är 7 och 3 operander och + kallas operator.Swift stöder följande typer av operatörer:

Fig 2: Olika operatörer i Swift - Snabb handledning

Nu kommer jag inte att gå djupare på killar, men låt mig visa er några enkla operationer i Swift. Tänk på exemplet nedan:

få längd på array i javascript
skriv ut ('5 + 3 = (5 + 3)') // Tilläggstryck ('5 - 3 = (5 - 3)') // Subtraktionstryck ('5 * 3 = (5 * 3)') // Multiplikationsutskrift ('5/3 = (5/3)') // Divisionsutskrift ('5% 3 = (5% 3)') // Modulus

Produktion:

5 + 3 = 8 5 - 3 = 2 5 * 3 = 15 5/3 = 1 5% 3 = 2,3 

OK!! Nu när ni känner till de grundläggande operatörerna, låt oss komma igång med villkorliga uttalanden.

Snabb handledning: Villkorliga uttalanden

Villkorliga uttalanden används för att utföra ett uttalande eller en grupp av uttalanden när något villkor är sant.Det finns nämligen tre villkorliga uttalanden - Om, Om annat och Växla uttalanden.

Så, låt oss börja med If-uttalandet nu.

Om uttalande

Ett, if-uttalande kan antingen bara vara ett enkelt if, eller ett kapslat if-uttalande.

Så enkelt Om uttalande är det enklaste beslutsuttalandet som avgör om ett visst uttalande eller block av uttalanden kommer att utföras eller inte.

Fig 3: Flödesschema över om villkorligt uttalande - Snabb handledning

Tänk på exemplet nedan:

var x: Int = 10 om x<20 { print('x is less than 20') } print('Value of variable x is (x)') 

Produktion:

x är mindre än 20 Värdet på variabeln x är 10

Nested-If

Nu, kapslad om är ett if-uttalande eller ett if-else-uttalande inom ett if-uttalande.

Fig 4: Flödesschema över kapslade om villkorliga uttalanden - Snabb handledning

Tänk på exemplet nedan:

var x: Int = 100 var y: Int = 200 om x == 100 {print ('Första villkoret är uppfyllt') om y == 200 {print ('Andra villkoret är också uppfyllt')}} print ('Value of variabel x är (x) ') utskrift (' Värde för variabel y är (y) ')

Produktion:

Första villkoret är uppfyllt Det andra villkoret är uppfyller Värdet på variabeln x är 100 Värdet på variabeln y är 200

Om-Annat uttalande

If-else-uttalande testar villkoret och om villkoret är falskt utförs 'annars' -uttalande.

Fig 5: Flödesschema över If - Annat villkorligt uttalande - Snabb handledning

Tänk på exemplet nedan:

var x: Int = 10 om x<20 { print('x is less than 20') } else { print('x is not less than 20')} print('Value of variable x is (x)') 

Produktion:

x är mindre än 20

If-else..if-else (If-else-stege)

Nu kan du också ha en om annat stege.Så, om-annars-om-stegen tillåter användaren att använda många om annars-uttalanden i en slinga och om ett av villkoren stämmer förbi resten av slingorna.

Fig 6: Flödesschema över If - Annan stege villkorligt uttalande - Snabb handledning

Tänk på exemplet nedan:

var x: Int = 100 var y: Int = 200 om xy {/ * Om villkoret är sant, skriv ut följande * / skriv ut ('x är större än y')} annat {/ * Om villkoret är felaktigt, skriv ut följande * / print ('x är lika med y')} print ('Value of variable x and y are: (x) and (y)')

Produktion:

x är mindre än y Värdet på variabeln x och y är: 100 och 200

S häxa

Växlingsuttalandet ger ett enkelt sätt att utföra villkor till olika delar av koden.

Fig 7: Flödesschema över villkorligt uttalande för växlar - Snabb handledning

Tänk på exemplet nedan:

var a = 20 switch index {case 10: print ('Value of index is 10') fallthrough case 15,20: print ('Value of index is either 15 or 20') fallthrough case 30: print ('Value of index is 30 ') standard: utskrift (' standardfall ')}

Produktion:

Indexets värde är antingen 15 eller 20 Indexets värde är 30

Nu, om du observerar produktionen, även efter att vårt tillstånd är uppfyllt, får vi också nästa uttalande. Det beror på att vi använder uttalandet falla igenom . Så om du inte använder en falla igenom uttalande kommer programmet att komma ur växla efter att ha utfört matchande ärende.

Intresserad av att bygga dina egna iOS-appar ??

Nu går vi vidare till iterativa slingor.

Snabb handledning: Iterativa öglor

I allmänhet utförs uttalanden sekventiellt. Det första uttalandet i en funktion körs först, följt av det andra och så vidare.Det kan finnas en situation när du behöver köra ett kodblock flera gånger.

Ett loop-uttalande gör att vi kan utföra ett uttalande eller en grupp av uttalanden flera gånger. Så, iterativa slingor är främst For-In , Medan och Göra medan slinga.

For-In Loop

For-in-slingan itererar över samlingar av objekt, till exempel siffror, objekt i en matris eller tecken i en sträng.

Fig 8: Flödesschema för in-loop - Snabb handledning

Tänk på exemplet nedan:

för jag i 1 ... 3 {print ('Hello world! and Value of i is (i)')}

Produktion:

Hej världen! och värdet på i är 1 Hej världen! och värdet på i är 2 Hello world! och värdet på i är 3

While Loop

Ett while-loop-uttalande i Swift-programmeringsspråket kör flera gånger ett måluttalande så länge som ett visst villkor är sant.

Fig 9: Flödesschema för While Loop - Snabb handledning

Tänk på exemplet nedan:

var ström: Int = 0 // Initiera variabler var slutlig: Int = 3 låt Slutfört = sant medan (nuvarande<= final) // condition { //play game if Completed { print('You have passed the level (current)') current = current + 1 //statement to be executed if the condition is satisfied } } print('The while loop ends') //Statement executed after the loop ends 

Produktion:

Du har klarat nivå 0 Du har klarat nivå 1 Du har klarat nivå 2 Du har klarat nivå 3 While-slingan slutar

Gör-medan / upprepa medan Loop

Till skillnad från för och under öglor, som testar slingans tillstånd längst upp i slingan, upprepas ... medan slingan kontrollerar dess tillstånd längst ner i slingan.

Fig 10: Flödesschema över Do-While Loop - Snabb handledning

Tänk på exemplet nedan:

var val = 5 upprepa {print ('Value is (val)') val = val + 1} medan index<10 

Produktion:

Värde är 5 Värde är 6 Värde är 7 Värde är 8 Värde är 9

Okej, killar! Det är ett slut på öglor, nu hoppar vi snabbt in i Arrays & Tuples.

Snabb handledning: Arrays & Tuples

Arrayer

En matris är en datastruktur som innehåller en lista med element. Dessa element har alla samma datatyp, till exempel ett heltal eller en sträng.Så antag att om du vill lagra namnen på dina vänner. Du kan skriva ett program enligt följande:

var vänner: Array = ['Akash', 'Sanjana', 'Avinash', 'Swatee']

Du kan också lägga till nya element i matrisen med hjälp av metoden append (). Se exemplet nedan:

vänner.append ('Aayushi') tryck (vänner)

Produktion:

Akash Sanjana Avinash Swatee Aayushi

Tuples

Tuples används för att gruppera flera värden i ett enda sammansatt värde. Tänk på exemplet nedan:

var failure404 = (404, 'Gateway not found') print ('Koden är (failure404.0)') print ('Definitionen av error är (failure404.1)') var failure404 = (failureCode: 404, beskrivning: “Gateway not found”) utskrift (failure404.faliureCode) // skriver ut 404.

Produktion

Koden är 404 Definitionen av fel är Gateway hittades inte 404

Okej, nu när ni förstår Arrays är det dags att komma igång med uppsättningar och ordböcker.

Vill du bli certifierad i iOS-utveckling ??

Snabb handledning: Uppsättningar och ordböcker

Uppsättningar

Uppsättningar används för att lagra distinkta värden av samma typ, utan att ha någon bestämd ordning som för matriser. Så du kan använda uppsättningar istället för matriser om du vill se till att det inte finns några dubbla värden eller om ordningen av element inte är ett problem .
En uppsättning skapas genom att placera alla föremål (element) i lockiga hakparenteser [], separerade med ett komma. Tänk på exemplet nedan:

let evenNumber: Set = [2,4,6,8,12]

Låt mig berätta att du också kan utföra de inställda operationerna som Union, Intersection, Subtraction.

Union: Union av A och B är en uppsättning av alla element från båda uppsättningarna. Föreningen utförs med .union() metod.

Jag genomskärning: Skärningspunkten mellan A och B är en uppsättning element som är vanliga i båda uppsättningarna. En korsning utförs med hjälp av .genomskärning() metod.

Subtrahera: Skillnaden mellan A och B (A - B) är en uppsättning element som bara finns i A men inte i B. På samma sätt är B - A en uppsättning element, dvs. i B men inte i A.Se koden nedan:

let evenNumber: Set = [10,12,14,16,18,20] let oddNumber: Set = [5,7,9,11,13,15] let primeNumber: Set = [2,3,5,7, 13,17,19] oddNumber.union (evenNumber) .sorted () oddNumber.intersection (evenNumber) .sorted () oddNumber.subtracting (primeNumber) .sorted ()

Produktion:

[5,7,9,10,11,12,13,14,15,16,18,20] [] [9, 11, 15]

Ordböcker

Ordböcker används för att lagra oordnade listor över värden av samma typ och Swift tillåter inte att du skriver in fel typ i en ordlista.Tänk på exemplet nedan.

var exampleDict: [Int: String] = [1: 'One', 2: 'Two', 3: 'Three'] // Skapa ordböcker var accessval = exampleDict [1] // Åtkomst till ordbokens värden skriv ut ('Value of key = 1 är (accessVal ') print (' Value of key = 2 is (exampleDict [2]) ') print (' Value of key = 3 is (exampleDict [3]) ')

Produktion:

Värdet på nyckeln = 1 är valfritt ('One') Värdet på nyckeln = 2 är valfritt ('Två') Värdet på nyckeln = 3 är valfritt ('Tre')

Snabb handledning: Funktioner

En funktion är i grunden en uppsättning uttalanden organiserade tillsammans för att utföra en specifik uppgift. Du kan ringa en funktion, ha en funktion med / utan parametrar, ha en funktion med / utan returvärden, ha funktionstyper och även använda kapslade funktioner.Se exemplet nedan för att förstå hur man definierar och anropar funktioner. Tänk på exemplet nedan:

func Anställd (empname: String) -> String {// Definiera en funktion returnera empname} print (Anställd (empname: 'Sayantini')) // Ringa en funktionsutskrift (Employee (empname: 'Kislay'))

Produktion:

Sayantini Kislay

Nu ska vi gå vidare till nästa avsnitt på bloggen, dvs. stängningar och strukturer.

Snabb handledning: Stängningar och strukturer

Stängningar

Stängningar förvirrar i allmänhet alla, men de är bara fristående koder, som funktion organiserade som block. De kan vara anonyma medan funktionen måste ha ett funktionsnamn. Tänk på exemplet nedan.

let name = {print ('Welcome to Swift Closures')} name ()

Produktion:

Välkommen till stängningar

Strukturer

Swift tillhandahåller en flexibel byggnad i alla kodningsplattformar som använder konstruktioner som strukturer. Genom att använda dessa strukturer kan en gång definiera konstruktionsmetoder och egenskaper. Tänk på exemplet nedan.
struct employeeDetails {// Definiera en struktur var name = 'Bob' var id = 11021 varphonenumber = 9876543210} let details = employeeDetails () // Åtkomst till struktur och egenskaper skriv ut ('Namn på anställd är (details.name)') print ('Anställdas ID är (detaljer.id)') utskrift ('Anställds telefonnummer är (detaljer.telefonnummer)')

Produktion:

Namn på anställd är Bob Id för anställd är 11021 Telefonnummer till anställd är 9876543210

Nu när ni har förstått strukturerna, låt oss förstå klasser och arv.

Snabb handledning: Klasser och arv

Klasser

Klasser i Swift är i grunden byggstenarna för flexibla konstruktioner. Så, liknande konstanter, variabler och funktioner kan användaren definiera klassegenskaper och metoder.

klass DetailsStruct {// Definiera en klass var id: Int init (id: Int) {self.id = id}} klass studentDetails {var id = 125612} låt studentid = studentDetails () skriva ut ('Student id är (studentid.id ) ')

Produktion:

Student-id är 125612

Arv

Arv är processen att skapa nya klasser, från befintliga klasser. Den härledda klassen ärver alla basklassens funktioner och kan lägga till sina egna funktioner också.

Klasser kan kategoriseras vidare till underklass och superklass .

Underklass: Om en klass ärver egenskaper, metoder och funktioner från en annan klass kallas den som en underklass.

talend etl tool tutorial pdf

Superklass : En klass som innehåller egenskaper, metoder och funktioner för att låta de andra klasserna ärva från sig själv kallas en superklass. Tänk på exemplet nedan.

klass EmployeeDetails {var id: Int var number: Int init (detail1: Int, detail2: Int) {id = detail1 number = detail2} func print () {print ('Anställd id är: (id), anställds telefonnummer är: (nummer) ')}} klassvisning: EmployeeDetails {init () {super.init (detalj1: 94567, detalj2: 9876543210) // super nyckelord används för att anropa parametrar och metoder från superklass}} låt medarbetarinformation = visa ( ) medarbetarinformation.avtryck ()

Produktion:

Anställd är94567, anställd telefonnummer är9876543210

Nu när ni har en uppfattning om huvudkoncepten i Swift. Låt oss nu lära oss de utvidgade ämnena som protokoll, tillägg, generik och uppräkningar.

Snabb handledning: Protokoll

Protokoll är som gränssnitt på andra språk för metoder, egenskaper och andra kravfunktioner. Tänk på exemplet nedan:
protokoll Fly {var flies: Bool {get set} func flyable (milesCovered: Double) -> String} class Vehicle: Fly {var flies: Bool = false var name: String = 'Standard name' func flyable (milesCovered: Double) - > Sträng {if (self.flies) {return '(self.name) flyger (milesCovered) miles'} annars {return '(self.name) kan inte flyga'}}} var BMWX1 = Fordon () BMWX1.name = ' BMW X1 'BMWX1.flies = falskt tryck (BMWX1.flyable (34))
Produktion:
BMW X1 kan inte flyga

Snabb handledning: Tillägg

Tillägg används i grunden för att lägga till funktionerna i en befintlig klass, struktur eller uppräkningstyp. Med tillägg kan du lägga till beräknade egenskaper och beräknade egenskaper, definiera och använda nya kapslade typer, definiera instans- och typmetoder, tillhandahålla nya initialiserare, definiera prenumerationer och även göra en befintlig typ överensstämmer med ett protokoll.

Tänk på exemplet nedan:

tillägg Int {var lägg till: Int {returnerar sig + 10} varsubtract: Int {returnerar sig själv- 34} var multiplicera: Int {returnerar själv * 5} var divide: Int {returnerar själv / 5}} låt addition = 3. lägg till utskrift ('Värdet efter addering är (lägg till) ') låt subtrahera = 120. subtrahera utskrift (' Värdet efter subtrahering är (subtrahering) ') låt multiplikation = 25. multiplicera utskrift (' Värdet som fördubblas är (multiplikation) ') låt division = 55 .dela utskrift ('Värdet efter uppdelning är (uppdelning)') låt mix = 10. lägg till + 34. subtrahera utskrift ('Beräknat värde är (mix)')

Produktion:

Värdet efter tillsats är 13 Värdet efter subtrahering är 86 Värdet som multipliceras är 125 Värdet efter division är 11 Beräknat värde är 20

Snabb handledning: Generika

Generiska typer används för att skriva flexibla och återanvändbara funktioner och typer. Så i princip kan man använda generiska produkter för att undvika dubbelarbete. Tänk på exemplet nedan:

funkbyte (x: inout T, y: inout T) {let temp = xx = yy = temp} var str1 = 'Hello' var str2 = 'Edureka' print ('Before Swapping Strängvärden är: (str1) och (str2 ) ') swap (x: & str1, y: & str2) print (' After Swapping Strängvärdena är: (str1) och (str2) ') var num1 = 1996 var num2 = 1865 print (' Before Swapping Int-värden är: (num1 ) och (num2) ') swap (x: & num1, y: & num2) print (' After Swapping Int-värden är: (num1) och (num2) ')

Produktion:

Innan du byter strängvärden är: Hej och Edureka Efter byte av strängvärden är: Edureka och Hello Innan du byter strängvärden är: 1996 och 1865 Efter byte av strängvärden är: 1865 och 1996

Snabb handledning: Uppräkningar

En uppräkning i enkla termer är en användardefinierad datatyp som består av en uppsättning relaterade värden. Nyckelordet enum används för att definiera den uppräknade datatypen. Tänk på exemplet nedan:

enum Color: Int {case blue case green case red case gul init () {self = .red} func getDetails () -> String {switch (self) {case .blue: return 'Color is blue' case .green: return 'Färg är grön' fall. Röd: retur 'Färg är röd' fall. Gul: retur 'Färg är gul' standard: retur 'Färg hittades inte'}}} var selectColor = Färgutskrift (väljColor.rawValue) var favColor = Färg .grönt tryck (favColor.rawValue) om (favColor == Color.green) {print ('Favoritfärg är grönt')} print (favColor.getDetails ())

Produktion:

2 ett Favoritfärgen är grön grön

Jag hoppas att du har haft det bra att läsa den här Swift Tutorial. Vi har täckt alla grunderna i Swift, så att du kan börja träna nu.

För att få fördjupad kunskap om Swift tillsammans med dess olika applikationer kan du för live onlineträning med support dygnet runt och livstidsåtkomst.

Lär dig av experter på industrinivå

Har du en fråga till oss? Nämn dem i kommentarfältet i ” Snabb handledning ”Så återkommer vi till dig.