Урок за Swift: Първи стъпки с разработката на iOS с помощта на Swift



В този урок за Swift ще получите въведение в разработката на iOS с помощта на Swift и ще разберете всички програмни концепции на Swift.

В този блог за урок на Swift ще ви запозная с някои от основните понятия на Swift. Но преди да продължите напред, ще ви запозная с „Какво е Swift“ и как можете да инсталирате Swift на вашата система. И така, нека започнем сега !!

В този блог на Swift Tutorial бих обхванал следните теми:





Урок за Swift: Какво е Swift?

Swift е език за програмиране, който възприема най-доброто от C и Objective-C и е разработен от Apple Inc. за разработка на iOS / OS X, за да работи на много съществуващи платформи iOS 6 и OS X 10.8.

Урок за бързо движение: Как да инсталирам Swift?

За да използвате Swift, ви е необходим софтуер Xcode, за да стартирате вашето Swift кодиране в Playground и след като се почувствате комфортно с Swift, можете да използвате Xcode IDE за разработка на iOS / OS x приложения.



Така че, ако приемем, че имате акаунт в уебсайта на Apple Developer, просто трябва да отидете на Изтеглете за разработчици на Apple.

След като отидете на връзката, изберете най-новата версия на Xcode и я изтеглете, като щракнете върху дадената връзка близо до изображението на диска.

След като изтеглите dmg файла, можете да го инсталирате, като просто щракнете двукратно върху него.



Добре!! Така че, след като имате своя xCode, просто щракнете двукратно върху него, за да се отвори и след това отидете на Файл -> Нов и изберете Игрище . След това изберете iOS и споменете името на детската площадка. След като приключите с това кликване Създайте.

Xcode IDE - Урок за бърз достъп - Edureka

Фиг. 1: Създаване на детска площадка в Xcode IDE - Урок за бърз достъп

И така, сега, когато вашата детска площадка е готова, нека започнем с малко кодиране!

И така, първоначално нека започнем с основния синтаксис, а след това да напишем здрава световна програма.

Урок за бързо движение: Основен синтаксис

  • Токени - Токенът е или ключова дума , идентификатор, константа, низов литерал или символ.
  • Точка и запетая - В Swift не е нужно да пишете точка и запетая () след всеки израз в кода. Само в случай на използване на множество изрази в един и същ ред, точка и запетая се използва като разделител.
  • Ключови думи - Ключовите думи са запазени думи в кодиращите езици, които не могат да се използват като константи или променливи или други имена на идентификатори, освен ако не са изведени с обратни отметки`& hellip`).
  • Литерали - Буквалът е главно представяне на изходния код на стойност на цяло число, число с плаваща запетая или тип низ. Така че, литералът може да бъде целочислен литерал, плаващ литерал, String литерал или булев литерал.
  • Коментари - Коментарите помагат на компилаторите да игнорират текстовете, които не трябва да се компилират. Многоредови коментари започват с / * и прекратяват с * / като има предвид, че едноредови коментари се пишат с // в началото на коментара.
  • Идентификатори - Swift е език, чувствителен на малки и големи букви и не позволява специални знаци като @, $ и% в идентификаторите. Идентификаторът започва с азбука А до Я или а до я или долна черта _, последвана от повече букви, долни черти и цифри (0 до 9).
  • Бели пространства - Празнината се използва в Swift за описване на заготовки, раздели, символи за нов ред, коментари и също така за отделяне на една част от изявление от друга. Това помага на компилатора да идентифицира къде завършва един елемент в изречението и започва следващият елемент.

Програма Hello World

/ * Hello World Program * / import UIKit // Тъй като създаваме програмата за игрална площадка на iOS, трябва да импортираме UiKit var myString = 'Hello World!' Print (myString) // Точка с запетая, тъй като 2 израза се използват заедно

Изход :

Здравей свят!

Сега, след като сте написали първата си програма, нека разберем повече за променливите и типовете данни.

Сертифицирайте се с проекти на ниво индустрия и бързо проследете кариерата си

Урок за бързо движение: Променливи, типове данни и TypeCasting

Променливи

Променливите не са нищо друго освен запазени места в паметта за съхраняване на стойности. Това означава, че когато създавате променлива, запазвате малко място в паметта.

var a = 42 // Деклариране на променлива var a: Int = 42 // Можете също да декларирате променлива, като посочите типа данни. нека b = 32 // Деклариране на константа за печат (varA)

Типове данни

Както всеки друг език за програмиране, swift предоставя вградените типове данни, към които можете да се обърнете в следната таблица:

Тип Типична ширина на бита Типичен обхват
Int8 1 байт- 127 до 127
UInt8 1 байт0 до 255
Int32 4 байта-2147483648 до 2147483647
UInt32 4 байта0 до 4294967295
Int64 8 байта-9223372036854775808 до 9223372036854775807
UInt64 8 байта0 до 18446744073709551615
Плувка 4 байта1.2E-38 до 3.4E + 38 (~ 6 цифри)
Двойна 8 байта2.3E-308 до 1.7E + 308 (~ 15 цифри)

Сега, нека ви разкажа един интересен факт тук.

В Swift не е задължително да дефинирате типа данни, когато декларирате променлива.

И така, да предположим, че декларирате променлива var b = 'Здравей' , тогава Swift автоматично ще разбере това б е Струна type променлива въз основа на въведеното от вас.

Тип кастинг

Сега можете дори да извършите преобразуване на тип или излъчване.

Например можете да конвертирате целочислената стойност в плаваща стойност и обратно.

Помислете за бившиядостатъчно отдолу:

нека a: Int = 5679 // Декларирайте 2 константи let b: Float = 2.9999 // Преобразуване на Float в Int печат („Този ​​номер е Int сега (Int (b))“) // Преобразуване на Int в Float печат („This числото е Float сега (Float (a)) ”)

Изход:

Това число е Int сега 2 Този номер е Float сега 5679.0

Урок за бързо движение: Оператори

Операторите са конструкциите, които могат да манипулират стойностите на операндите. Помислете за израза 7 + 3 = 10, тук 7 и 3 са операнди и + се нарича оператор.Swift поддържа следните видове оператори:

js получи дължината на масива

Фигура 2: Различни оператори в Swift - Урок за Swift

Сега няма да се задълбочавам, но нека ви покажа няколко прости операции в Суифт. Помислете за примера по-долу:

print ('5 + 3 = (5 + 3)') // Добавяне на print ('5 - 3 = (5 - 3)') // Печат за изваждане ('5 * 3 = (5 * 3)') // Умножение отпечатък ('5/3 = (5/3)') // Отпечатване на деление ('5% 3 = (5% 3)') // Модул

Изход:

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

Добре!! Сега, когато вие знаете основните оператори, нека да започнем с условните оператори.

Урок за бързо движение: Условни изявления

Условните оператори се използват за изпълнение на оператор или група изрази, когато дадено условие е вярно.Има именно три условни твърдения - Ако Ако друго и Превключване изявления.

И така, нека започнем с изявлението If сега.

Ако изявление

Оператор if, може да бъде или просто, ако, или вложен оператор if.

Така че, просто Ако statement е най-простото изявление за вземане на решение, което решава дали дадено изявление или блок от изявления ще бъдат изпълнени или не.

Фигура 3: Блок-схема на условно изявление - бърз урок

Помислете за примера по-долу:

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

Изход:

x е по-малко от 20 Стойността на променлива x е 10

Вложен-ако

Сега, вложен ако е оператор if или if-else израз в if израз.

Фигура 4: Блок-схема на вложено ако условно изявление - бърз урок

Помислете за примера по-долу:

var x: Int = 100 var y: Int = 200 ако x == 100 {print ('Първото условие е изпълнено') ако y == 200 {print ('Второто условие също е изпълнено')}} print ('Стойност на променлива x е (x) ') print (' Стойността на променлива y е (y) ')

Изход:

Първото условие е изпълнено Второто условие е изпълнено Стойността на променлива x е 100 Стойността на променлива y е 200

Изказване „Ако е друго“

Операторът if-else тества състоянието и ако условието е невярно, тогава се изпълнява израза ‘else’.

Фигура 5: Блок-схема на If - Друго условно изявление - Бърз урок

Помислете за примера по-долу:

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

Изход:

x е по-малко от 20

If-else..if-else (If-else стълба)

Сега можете да имате и ако-друго стълба.И така, стълбата If-else-if позволява на потребителя да използва много инструкции if else в рамките на цикъл и в случай че едно от условията е вярно, останалите цикли се заобикалят.

Фигура 6: Блок-схема на If - Условие за друго стълбище - Урок за бърз достъп

Помислете за примера по-долу:

var x: Int = 100 var y: Int = 200 if xy {/ * Ако условието е вярно, отпечатайте следното * / print ('x е по-голямо от y')} else {/ * Ако условието е false, отпечатайте следното * / print ('x е равно на y')} print ('Стойността на променливите x и y са: (x) и (y)')

Изход:

x е по-малко от y Стойността на променливите x и y са: 100 и 200

С вещица

Инструкцията за превключване предоставя лесен начин за изпълнение на условия за различни части на кода.

Фигура 7: Блок-схема на условна декларация на превключвателя - Урок за бърз достъп

Помислете за примера по-долу:

var a = 20 превключващ индекс {случай 10: печат ('Стойността на индекса е 10') случай на падане 15,20: печат ('Стойността на индекса е или 15 или 20') случай на падане 30: print ('Стойността на индекса 30 ') по подразбиране: печат (' случай по подразбиране ')}

Изход:

Стойността на индекса е 15 или 20 Стойността на индекса е 30

Сега, ако наблюдавате изхода, дори след като условието ни е изпълнено, получаваме и следващото извлечение. Това е така, защото използваме изявлението пропадам . Така че, ако не използвате пропадам , тогава програмата ще излезе от превключвател изявление след изпълнение на съответстващото изявление за случай.

Интересувате ли се от създаването на свои собствени приложения за iOS ??

Сега да преминем към итеративни цикли.

Урок за бързо движение: Итеративни цикли

По принцип изявленията се изпълняват последователно. Първият оператор във функция се изпълнява първо, последван от втория и т.н.Може да има ситуация, когато трябва да изпълнявате блок от код няколко пъти.

Циклов оператор ни позволява да изпълняваме оператор или група от изрази няколко пъти. И така, итеративните цикли са главно For-In , Докато и Do-While цикъл.

Lo-In Loop

Цикълът in-in прелиства колекции от елементи, като диапазони от числа, елементи в масив или символи в низ.

Фигура 8: Блок-схема на For-in Loop - Урок за бърз достъп

Помислете за примера по-долу:

за i в 1 ... 3 {print ('Здравей, свят! и Стойността на i е (i)')}

Изход:

Здравей свят! и Стойността на i е 1 Здравей свят! и стойността на i е 2 Здравей, свят! и Стойността на i е 3

Докато Loop

Инструкция за цикъл while в програмния език Swift многократно изпълнява целеви оператор, стига дадено условие да е вярно.

Фигура 9: Диаграма на потока на цикъла - Урок за бързи движения

Помислете за примера по-долу:

var current: Int = 0 // Инициализиране на променливи var final: Int = 3 let Completed = true while (current<= 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 

Изход:

Преминахте ниво 0 Преминахте ниво 1 Преминахте ниво 2 Преминахте ниво 3 Цикълът while завършва

Do-while / Repeat while Loop

За разлика от циклите for и while, които тестват състоянието на цикъла в горната част на цикъла, цикълът repeat ... while проверява състоянието му в долната част на цикъла.

Фигура 10: Блок-схема на цикъла на изпълнението - бърз урок

Помислете за примера по-долу:

var val = 5 повторение {print ('Стойността е (val)') val = val + 1} докато индекс<10 

Изход:

Стойността е 5 Стойността е 6 Стойността е 7 Стойността е 8 Стойността е 9

Добре, момчета! Това е край на циклите, сега нека бързо да влезем в Arrays & Tuples.

Урок за бързо движение: Масиви и Tuples

Масиви

Масивът е структура от данни, която съдържа списък с елементи. Всички тези елементи са от един и същи тип данни, като цяло число или низ.И така, да предположим, че ако искате да съхраните имената на вашите приятели. Можете да напишете програма, както следва:

var приятели: Array = ['Akash', 'Sanjana', 'Avinash', 'Swatee']

Можете също да добавите нови елементи в масива, като използвате метода append (). Вижте примера по-долу:

friends.append ('Aayushi') print (приятели)

Изход:

Akash Sanjana Avinash Swatee Aayushi

Кортежи

Кортините се използват за групиране на множество стойности в една съставна стойност. Помислете за примера по-долу:

var failure404 = (404, „Шлюзът не е намерен“) print („Кодът е (error404.0)“) print („Определението за грешка е (error404.1)“) var failure404 = (errorCode: 404, описание: “Шлюзът не е намерен”) print (failure404.faliureCode) // отпечатва 404.

Изход

Кодът е 404 Определението за грешка е Gateway not found 404

Добре, сега, след като сте разбрали Arrays, е време да започнете с набори и речници.

Искате ли да получите сертификат за разработка на iOS ??

Урок за бързо движение: Комплекти и речници

Комплекти

Наборите се използват за съхраняване на различни стойности от един и същи тип, без да има определена подредба като тази на масиви. Така че, можете да използвате набори вместо масиви, ако искате да се уверите, че няма дублиращи се стойности или ако подреждането на елементи не е проблем .
Набор се създава чрез поставяне на всички елементи (елементи) във фигурни скоби [], разделени със запетая. Помислете за примера по-долу:

нека evenNumber: Set = [2,4,6,8,12]

Сега, нека ви кажа, че можете също да извършвате зададените операции като Съединение, Пресичане, Изваждане.

Съюз: Съединението на A и B е набор от всички елементи от двата набора. Обединението се извършва с помощта .union () метод.

Аз ntersection: Пресичането на A и B е набор от елементи, които са често срещани и в двата множества. Пресичането се извършва с помощта на .intersection () метод.

Изваждане: Разликата между A и B (A - B) е набор от елементи, които са само в A, но не и в B. По същия начин B - A е набор от елементи, т.е.в B, но не и в A.Вижте кода по-долу:

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 ()

Изход:

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

Речници

Речниците се използват за съхраняване на неподредени списъци със стойности от същия тип и Swift не ви позволява да въведете грешен тип в речник.Помислете за примера по-долу.

var exampleDict: [Int: String] = [1: 'One', 2: 'Two', 3: 'Three'] // Създаване на речници var accessval = exampleDict [1] // Достъп до стойности на речника print ('Стойност на ключа = 1 е (accessVal ') print (' Стойността на ключа = 2 е (exampleDict [2]) ') print (' Стойността на ключа = 3 е (exampleDict [3]) ')

Изход:

Стойността на ключ = 1 не е задължителна („Една“) Стойността на ключ = 2 не е задължителна („две“) Стойността на ключ = 3 не е задължителна („Три“)

Урок за бързо движение: Функции

Функцията е основно набор от изрази, организирани заедно за изпълнение на определена задача. Можете да извикате функция, да имате функция с / без параметри, да имате функция с / без връщани стойности, да имате типове функции и също да използвате вложени функции.Вижте примера по-долу, за да разберете как да дефинирате и извиквате функции. Помислете за примера по-долу:

func Служител (empname: String) -> String {// Определяне на функция return emname} print (Служител (empname: 'Sayantini')) // Извикване на функция print (Служител (empname: 'Kislay'))

Изход:

Саянтини Кислай

Сега, да преминем към следващия раздел на блога, т.е. Затваряния и структури.

Урок за бързо движение: Затваряния и конструкции

Затваряния

Затварянията обикновено объркват всички, но те са просто самостоятелни кодове, като функция, организирана като блокове. Те могат да бъдат анонимни, докато функцията трябва да има име на функция. Помислете за примера по-долу.

let name = {print ('Добре дошли в Swift Closures')} name ()

Изход:

Добре дошли в затварянията

Структури

Swift осигурява гъвкава сграда във всеки блок на кодираща платформа за използване на конструкции като структури. Чрез използването на тези структури веднъж може да дефинира методи и свойства на конструкции. Помислете за примера по-долу.
struct workerDetails {// Дефиниране на структура var name = 'Bob' var id = 11021 varphonenumber = 9876543210} let details = workerDetails () // Достъп до структурата и свойствата print ('Името на служителя е (details.name)') print ('Id на служителя е (details.id)') print ('Телефонният номер на служителя е (details.phonenumber)')

Изход:

Името на служителя е Боб Идентификационният номер на служителя е 11021 Телефонният номер на служителя е 9876543210

Сега, след като сте разбрали структурите, нека разберем класове и наследяване.

Урок за бързо движение: Класове и наследяване

Класове

Класовете в Swift са основно градивните елементи на гъвкавите конструкции. Така че, подобно на константите, променливите и функциите, потребителят може да дефинира свойства и методи на класа.

class DetailsStruct {// Определяне на идентификатор на клас var: Int init (id: Int) {self.id = id}} class studentDetails {var id = 125612} let studentid = studentDetails () print ('Идент. номер на студент е (studentid.id ) ')

Изход:

Идент. № на студента е 125612

Наследяване

какво прави init в python

Наследяването е процес на създаване на нови класове от съществуващи класове. Полученият клас наследява всички възможности на базовия клас и може да добави и свои собствени функционалности.

Класовете могат да бъдат допълнително категоризирани подклас и суперклас .

Подклас: Ако клас наследява свойства, методи и функции от друг клас, той се извиква като подклас.

Суперклас : Клас, който съдържа свойства, методи и функции, които позволяват на останалите класове да наследят от себе си, се нарича суперклас. Помислете за примера по-долу.

class EmployeeDetails {var id: Int var number: Int init (detail1: Int, detail2: Int) {id = detail1 number = detail2} func print () {print ('Id на служителя е: (id), телефонният номер на служителя е: (номер) ')}} клас дисплей: EmployeeDetails {init () {super.init (detail1: 94567, detail2: 9876543210) // ключовата дума super се използва за извикване на параметрите и методите от супер клас}} let workerinformation = display ( ) workerinformation.print ()

Изход:

Идент. № на служителя е94567, телефонният номер на служителя е9876543210

Сега, че вие ​​имате представа за основните концепции в Swift. Нека сега започнем да изучаваме разширените теми като протоколи, разширения, генерични продукти и изброявания.

Урок за бързо движение: Протоколи

Протоколите са като интерфейси на други езици за методи, свойства и други изисквания за функционалност. Помислете за примера по-долу:
протокол Fly {var flies: Bool {get set} func flyable (milesCovered: Double) -> String} class Vehicle: Fly {var flies: Bool = false var name: String = 'Default name' func flyable (milesCovered: Double) - > Низ {if (self.flies) {return '(self.name) лети (milesCovered) мили'} else {return '(self.name) не може да лети'}}} var BMWX1 = Vehicle () BMWX1.name = ' BMW X1 'BMWX1.flies = фалшив печат (BMWX1.flyable (34))
Изход:
BMW X1 не може да лети

Урок за бързо движение: Разширения

Разширенията се използват основно за добавяне на функционалностите на съществуващ клас, структура или тип изброяване. С разширенията можете да добавяте изчислени свойства и изчислени свойства на типа, да дефинирате и използвате нови вложени типове, да дефинирате екземпляр и методи на тип, да предоставяте нови инициализатори, да дефинирате индекси и също така да направите съществуващ тип да съответства на протокол.

Помислете за примера по-долу:

разширение Int {var add: Int {returnself + 10} varsubtract: Int {returnself- 34} var multiply: Int {returnself * 5} var divide: Int {returnself / 5}} let add = 3.add print ('Стойността след добавяне е (добавяне) ') нека изваждане = 120. изваждане на печат (' Стойността след изваждане е (изваждане) ') нека умножение = 25. умножение отпечатване (' Стойността се измерва (умножение) ') нека разделяне = 55 .divide print ('Стойността след разделянето е (разделяне)') let mix = 10.add + 34.subtract print ('Изчислената стойност е (микс)')

Изход:

Стойността след добавяне е 13 Стойността след изваждане е 86 Умножаващата се стойност е 125 Стойността след разделяне е 11 Изчислената стойност е 20

Урок за бързо движение: Дженерици

Общите типове се използват за писане на гъвкави и многократно използвани функции и типове. Така че, в основата си можете да използвате генерични лекарства, за да избегнете дублиране. Помислете за примера по-долу:

func swap (x: inout T, y: inout T) {let temp = xx = yy = temp} var str1 = 'Hello' var str2 = 'Edureka' print ('Стойностите на низовете преди размяна са: (str1) и (str2 ) ') swap (x: & str1, y: & str2) print (' Стойностите на низа след размяна са: (str1) и (str2) ') var num1 = 1996 var num2 = 1865 print (' Преди да се разменят Int стойностите са: (num1 ) и (num2) ') swap (x: & num1, y: & num2) print (' След размяна Int стойностите са: (num1) и (num2) ')

Изход:

Преди да замените String стойностите са: Hello и Edureka След размяната на низове стойностите са: Edureka и Hello Стойностите преди низ за размяна са: 1996 и 1865 Стойностите след низ за размяна са: 1865 и 1996

Урок за бързо движение: Изброявания

Изброяването с прости термини е дефиниран от потребителя тип данни, който се състои от набор от свързани стойности. Ключовата дума преброяване се използва за дефиниране на изброения тип данни. Помислете за примера по-долу:

enum Цвят: Int {калъф син калъф зелен калъф червен калъф жълт init () {self = .red} func getDetails () -> String {switch (self) {case .blue: return 'Color is blue' case .green: return Калъф „Цветът е зелен“ .червен: връщане „Цветът е червен“. Жълт: връщане „Цветът е жълт“ по подразбиране: връщане „Цветът не е намерен“}}} var selectColor = Цветен печат (selectColor.rawValue) var favColor = Цвят .green print (favColor.rawValue) if (favColor == Color.green) {print ('Любимият цвят е зелен')} print (favColor.getDetails ())

Изход:

2 един Любимият цвят е зеленият зелено

Надявам се, че ви е харесало да прочетете този урок за бързо движение. Покрихме всички основи на Суифт, така че можете да започнете да практикувате сега.

За да получите задълбочени познания за Swift заедно с различните му приложения, можете за онлайн обучение на живо с 24/7 поддръжка и доживотен достъп.

Научете се от експерти на ниво индустрия

Имате въпрос към нас? Споменете ги в раздела за коментари на „ Бърз урок ”И ние ще се свържем с вас.