Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOS Development with Swift
Search
Venkat Palivela
March 27, 2015
Programming
0
320
iOS Development with Swift
Getting started with swift and iOS development. My talk at MVP Mix 2015 in Dallas, Texas
Venkat Palivela
March 27, 2015
Tweet
Share
More Decks by Venkat Palivela
See All by Venkat Palivela
Continuous Delivery in Mobile
vpalivela
0
180
iOS Development with C#
vpalivela
0
330
Groovy on Grails
vpalivela
2
520
Other Decks in Programming
See All in Programming
CSC509 Lecture 06
javiergs
PRO
0
260
Catch Up: Go Style Guide Update
andpad
0
230
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
0
1.2k
明日から始めるリファクタリング
ryounasso
0
140
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
3.3k
Leading Effective Engineering Teams in the AI Era
addyosmani
5
420
Le côté obscur des IA génératives
pascallemerrer
0
150
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
160
CSC509 Lecture 03
javiergs
PRO
0
340
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
110
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
2
860
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
580
Featured
See All Featured
Scaling GitHub
holman
463
140k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
GraphQLとの向き合い方2022年版
quramy
49
14k
The Cost Of JavaScript in 2023
addyosmani
55
9k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Unsuck your backbone
ammeep
671
58k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Designing Experiences People Love
moore
142
24k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Transcript
Starting iOS Development with Swift Venkat Palivela ThoughtWorks @venkatpalivela
Hi, my name is Venkat I’m a Senior Consultant at
ThoughtWorks Developing Mobile Apps 2
Outline • What is Swift? • Swift Basics • Swift
and Objc • Why native? 3
What is Swift?
What is Swift? 5 New Language for Apple Functional Object
Oriented Statically Typed Type Inference
What does it all mean? 6 Top Down vs Bottom
Up Object Oriented Programming is top down Functional Programming is bottom up Swift is both…
Language Constructs • Types and Type Inferencing • Optional Types
• First class functions • Closures • Reactive Programming 7
Types 8 var someString = “Hello World!” let someOtherString =
“Hello World!” var someString: String = “Hello World!” let someOtherString: String = “Hello World!”
Optional Types 9 var user: User? var userName = user?.fullName.uppercaseString
var postalCode = user?.address?.state?.uppercaseString
Functions & Closures 10 func lessThanTen(number: Int) -‐> Bool {
return number < 10 } func someOperation( input: Int, success: (result: String) -‐> Void, failure: (error: NSError) -‐> Void) { // Do some async operation }
Code Demo! 11
Code Katas 12 • Prime Factors • Bowling • Mars
Rover • Poker • Vending Machine • Conway’s Game of Life
Swift and Objc 13 Objective - C Runtime Swift Objective
- C All Swift programs execute inside Objective-C runtime. As a result bridging between Swift and Objective -C is possible However, Swift only language constructs are not visible to Objective-C Bridging
Why Native? 14 http://martinfowler.com/articles/multiMobile/
Thanks! Venkat Palivela @venkatpalivela 15