SlideShare a Scribd company logo
1 of 23
iOS Development
with Swift
print("SWIFT")
What?
Multi-paradigm
Designed by Apple
First Appeared in June, 2014
Why?
Productivity
Inter-operability
Apple’s Language of choice
Who?
Playground
Syntax
Constants and Variables
let place: String = "Pace"
let year: Int = 2015
let isHavingFun: Bool = true
var version: Double = 1.0
version = 2.1
Type Inference
let place = "Pace"
let year = 2015
let isHavingFun = true
var version = 1.0
version = 2.1
Most awesome feature
Strings
Concatenation
Type Cast
Format
Arrays and Dictionaries
var emptyArray = [String]()
emptyArray.append("foo")
let someNumbers = [1, 2, 3]
var majors = Dictionary<String, String>()
majors["John"] = "Computer Science"
majors.removeValueForKey("John")
let schedule = [
"morning": "classes",
"afternoon": "awesome workshop",
"night": "party",
]
Optionals
let numberOfLegs = ["ant": 6, "snake": 0, "cheetah": 4]
let possibleLegCount: Int? = numberOfLegs["aardvark"]
Flow Control
If / Else
For / While
Switch
Functions
func hello(name: String = “world”){
print (“Hello (name)”)
}
func add(n1: Int, n2: Int) -> Int {
return n1 + n2
}
add(1, n2: 2)
Classes
Class Declaration
Inheritance
Initialization
Method overriding
Creating an iOS Project
App Lifecycle
ViewController Lifecycle
UIKit and Interface Builder
UIViewController
UIView
UILabel
UIButton
UIImageView
UITableView
UITextField
Importing Assets
Let’s Do Something!
Thanks!
Ian Carvalho
Twitter: @ian.carv

More Related Content

Viewers also liked

Ysq rolnick schema short
Ysq rolnick schema shortYsq rolnick schema short
Ysq rolnick schema shortArnon Rolnick
 
Caracteristicas y diferencias entre bing y google
Caracteristicas y diferencias entre bing y googleCaracteristicas y diferencias entre bing y google
Caracteristicas y diferencias entre bing y googleHector Umajinga
 
การพัฒนาซอฟต์แวร์แบบ Reactive Systems
การพัฒนาซอฟต์แวร์แบบ Reactive Systemsการพัฒนาซอฟต์แวร์แบบ Reactive Systems
การพัฒนาซอฟต์แวร์แบบ Reactive SystemsIMC Institute
 
Strategic Content Framework
Strategic Content FrameworkStrategic Content Framework
Strategic Content FrameworkRob Bertholf
 
XECon2015 :: [3-4] 조정현 - Laravel with cloud
XECon2015 :: [3-4] 조정현 - Laravel with cloudXECon2015 :: [3-4] 조정현 - Laravel with cloud
XECon2015 :: [3-4] 조정현 - Laravel with cloudXpressEngine
 
8.1 konsep hibah(syariah) arifah
8.1 konsep hibah(syariah) arifah8.1 konsep hibah(syariah) arifah
8.1 konsep hibah(syariah) arifahshahirah44
 
Node basic training
Node basic trainingNode basic training
Node basic trainingCaesar Chi
 
8.2(2,3,4) syariah afina h ibbah
8.2(2,3,4) syariah afina h ibbah8.2(2,3,4) syariah afina h ibbah
8.2(2,3,4) syariah afina h ibbahshahirah44
 
La isla bajo el mar
La isla bajo el marLa isla bajo el mar
La isla bajo el marcecy-mendez
 
Building Startup Ecosystems (Baku, Nov 2014)
Building Startup Ecosystems (Baku, Nov 2014)Building Startup Ecosystems (Baku, Nov 2014)
Building Startup Ecosystems (Baku, Nov 2014)Dave McClure
 
Noise Performance of CW system
Noise Performance of CW systemNoise Performance of CW system
Noise Performance of CW systemDr Naim R Kidwai
 
Untitled presentation
Untitled presentationUntitled presentation
Untitled presentationSarah Austin
 
UX Design - trust and engagement
UX Design - trust and engagementUX Design - trust and engagement
UX Design - trust and engagementIdeacto
 
Marcio iti lv3_5_operacao_deservicos
Marcio iti lv3_5_operacao_deservicosMarcio iti lv3_5_operacao_deservicos
Marcio iti lv3_5_operacao_deservicosfernandao777
 

Viewers also liked (17)

Ysq rolnick schema short
Ysq rolnick schema shortYsq rolnick schema short
Ysq rolnick schema short
 
Genre of text
Genre of textGenre of text
Genre of text
 
Caracteristicas y diferencias entre bing y google
Caracteristicas y diferencias entre bing y googleCaracteristicas y diferencias entre bing y google
Caracteristicas y diferencias entre bing y google
 
การพัฒนาซอฟต์แวร์แบบ Reactive Systems
การพัฒนาซอฟต์แวร์แบบ Reactive Systemsการพัฒนาซอฟต์แวร์แบบ Reactive Systems
การพัฒนาซอฟต์แวร์แบบ Reactive Systems
 
Strategic Content Framework
Strategic Content FrameworkStrategic Content Framework
Strategic Content Framework
 
XECon2015 :: [3-4] 조정현 - Laravel with cloud
XECon2015 :: [3-4] 조정현 - Laravel with cloudXECon2015 :: [3-4] 조정현 - Laravel with cloud
XECon2015 :: [3-4] 조정현 - Laravel with cloud
 
8.1 konsep hibah(syariah) arifah
8.1 konsep hibah(syariah) arifah8.1 konsep hibah(syariah) arifah
8.1 konsep hibah(syariah) arifah
 
Node basic training
Node basic trainingNode basic training
Node basic training
 
8.2(2,3,4) syariah afina h ibbah
8.2(2,3,4) syariah afina h ibbah8.2(2,3,4) syariah afina h ibbah
8.2(2,3,4) syariah afina h ibbah
 
Iliade
IliadeIliade
Iliade
 
東海支部西田
東海支部西田東海支部西田
東海支部西田
 
La isla bajo el mar
La isla bajo el marLa isla bajo el mar
La isla bajo el mar
 
Building Startup Ecosystems (Baku, Nov 2014)
Building Startup Ecosystems (Baku, Nov 2014)Building Startup Ecosystems (Baku, Nov 2014)
Building Startup Ecosystems (Baku, Nov 2014)
 
Noise Performance of CW system
Noise Performance of CW systemNoise Performance of CW system
Noise Performance of CW system
 
Untitled presentation
Untitled presentationUntitled presentation
Untitled presentation
 
UX Design - trust and engagement
UX Design - trust and engagementUX Design - trust and engagement
UX Design - trust and engagement
 
Marcio iti lv3_5_operacao_deservicos
Marcio iti lv3_5_operacao_deservicosMarcio iti lv3_5_operacao_deservicos
Marcio iti lv3_5_operacao_deservicos
 

Similar to Workshop iOS

High Level Application Scripting With EFL and LuaJIT
High Level Application Scripting With EFL and LuaJITHigh Level Application Scripting With EFL and LuaJIT
High Level Application Scripting With EFL and LuaJITSamsung Open Source Group
 
Erlang is not a city in Germany
Erlang is not a city in GermanyErlang is not a city in Germany
Erlang is not a city in Germanymomo-13
 
Flutter Festival IIT Goa: Session 1
Flutter Festival IIT Goa: Session 1Flutter Festival IIT Goa: Session 1
Flutter Festival IIT Goa: Session 1SEJALGUPTA44
 
F# and Reactive Programming for iOS
F# and Reactive Programming for iOSF# and Reactive Programming for iOS
F# and Reactive Programming for iOSBrad Pillow
 
C# and the Evolution of a Programming Language
C# and the Evolution of a Programming LanguageC# and the Evolution of a Programming Language
C# and the Evolution of a Programming LanguageJacinto Limjap
 
Programming Under Linux In Python
Programming Under Linux In PythonProgramming Under Linux In Python
Programming Under Linux In PythonMarwan Osman
 
Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)
Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)
Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)Aniruddha Chakrabarti
 
Lua by Ong Hean Kuan
Lua by Ong Hean KuanLua by Ong Hean Kuan
Lua by Ong Hean Kuanfossmy
 
Tools, Frameworks, & Swift for iOS
Tools, Frameworks, & Swift for iOSTools, Frameworks, & Swift for iOS
Tools, Frameworks, & Swift for iOSTeri Grossheim
 
Kotlin for android 2019
Kotlin for android 2019Kotlin for android 2019
Kotlin for android 2019Shady Selim
 

Similar to Workshop iOS (14)

What are monads?
What are monads?What are monads?
What are monads?
 
High Level Application Scripting With EFL and LuaJIT
High Level Application Scripting With EFL and LuaJITHigh Level Application Scripting With EFL and LuaJIT
High Level Application Scripting With EFL and LuaJIT
 
What is Python?
What is Python?What is Python?
What is Python?
 
Erlang is not a city in Germany
Erlang is not a city in GermanyErlang is not a city in Germany
Erlang is not a city in Germany
 
Flutter Festival IIT Goa: Session 1
Flutter Festival IIT Goa: Session 1Flutter Festival IIT Goa: Session 1
Flutter Festival IIT Goa: Session 1
 
Python slide
Python slidePython slide
Python slide
 
F# and Reactive Programming for iOS
F# and Reactive Programming for iOSF# and Reactive Programming for iOS
F# and Reactive Programming for iOS
 
C# and the Evolution of a Programming Language
C# and the Evolution of a Programming LanguageC# and the Evolution of a Programming Language
C# and the Evolution of a Programming Language
 
Programming Under Linux In Python
Programming Under Linux In PythonProgramming Under Linux In Python
Programming Under Linux In Python
 
Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)
Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)
Using Swift for all Apple platforms (iOS, watchOS, tvOS and OS X)
 
Python 101
Python 101Python 101
Python 101
 
Lua by Ong Hean Kuan
Lua by Ong Hean KuanLua by Ong Hean Kuan
Lua by Ong Hean Kuan
 
Tools, Frameworks, & Swift for iOS
Tools, Frameworks, & Swift for iOSTools, Frameworks, & Swift for iOS
Tools, Frameworks, & Swift for iOS
 
Kotlin for android 2019
Kotlin for android 2019Kotlin for android 2019
Kotlin for android 2019
 

Recently uploaded

Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 

Recently uploaded (20)

Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 

Workshop iOS