SlideShare a Scribd company logo
Brooklyn Swift Developers Meetup
June 17, 2014
Swift: The Basics
WWDC 2014
Brooklyn Swift Developers Meetup
“And One More Thing…”
Brooklyn Swift Developers Meetup
Early Reactions
Brooklyn Swift Developers Meetup
Early Reactions
Brooklyn Swift Developers Meetup
Early Reactions
Brooklyn Swift Developers Meetup
Early Reactions
Brooklyn Swift Developers Meetup
“HOLY FUCK”
- me
Early Reactions
Brooklyn Swift Developers Meetup
“FUCK YEAH”
- me 5 min later
Early Reactions
Brooklyn Swift Developers Meetup
Early Reactions
Brooklyn Swift Developers Meetup
Early Reactions
Brooklyn Swift Developers Meetup
Early Reactions
Brooklyn Swift Developers Meetup
Early Reactions
Brooklyn Swift Developers Meetup
Swift
Brooklyn Swift Developers Meetup
Swift
Brooklyn Swift Developers Meetup
Convenience of a Modern
Scripting language with the
Performance of Objective-C
Swift vs. Objective-C
Brooklyn Swift Developers Meetup
Swift vs. Objective-C
Brooklyn Swift Developers Meetup
Namespaces

• Class names scoped to module
(ie. framework)

• No more class prefixes
Swift vs. Objective-C
Brooklyn Swift Developers Meetup
Type Safety

• Compiler performs type checks
to find mismatched types

• Allows for type inference
var heyStr = “Hey”
Swift vs. Objective-C
Brooklyn Swift Developers Meetup
Closures

• Nameless function constructed
as another function's argument

• Equivalent to Blocks
numbers.map({	
(number: Int) -> Int in	
let result = 3 * number	
return result	
})
Swift vs. Objective-C
Brooklyn Swift Developers Meetup
Tuples

• Group multiple values to single value

• Supports multiple types
let someTuple = (10, true, “Hello”)	
// type (Int, Bool, String)	
let anotherTuple = (arg1: 100, 	
	 	 	 	 	 	 	 	 	 arg2: “Hi”)	
// anotherTuple.arg1, anotherTuple.arg2
Playground
Brooklyn Swift Developers Meetup
Playground
Brooklyn Swift Developers Meetup
• Interactive coding environment for testing

• Immediate feedback
Brooklyn Swift Developers Meetup
DEMO
Brooklyn Swift Developers Meetup
Questions?
Brooklyn Swift Developers Meetup
Resources
Brooklyn Swift Developers Meetup
• The Swift Programming Language

https://itunes.apple.com/us/book/swift-programming-language/
id881256329?mt=11

• WWDC 2014 Videos

https://developer.apple.com/videos/wwdc/2014

• Ray Wenderlich Tutorials

http://www.raywenderlich.com/tutorials

• Swift Video Tutorials

http://swiftvideotutorials.com
Github: https://github.com/marcdown

Twitter: @creativemessdev

!
Source: https://github.com/marcdown/SwiftPlayground
Brooklyn Swift Developers Meetup
Thanks!

More Related Content

PDF
Is this Swift for Android? A short introduction to the Kotlin language
PDF
DevOps Anti-Patterns
PPTX
How To Write a Testable Code
PPTX
Intro to Kotlin Minia GDG DevFest 2017
PPTX
ATO 2014 - So You Think You Know 'Go'? The Go Programming Language
PPTX
Typescript kata The TDD style 2 edition
PPTX
2018-09 - F# and Fable
PDF
Open Source Software Contribution
Is this Swift for Android? A short introduction to the Kotlin language
DevOps Anti-Patterns
How To Write a Testable Code
Intro to Kotlin Minia GDG DevFest 2017
ATO 2014 - So You Think You Know 'Go'? The Go Programming Language
Typescript kata The TDD style 2 edition
2018-09 - F# and Fable
Open Source Software Contribution

What's hot (20)

PDF
TDC2016POA | Trilha DevOps - DevOps Anti-Patterns
PPTX
New Things in C# 6.0
PDF
A brief intro to RubyMotion
PDF
Golang #5: To Go or not to Go
PDF
Kotlin & Swift
PPTX
Static Type Checking with FlowJs
PPTX
PDF
Crystal
PDF
Driving development in PHP
PDF
Scala vs ruby
PDF
Intro to Crystal Programming Language
PDF
Better Swift from the Foundation up #tryswiftnyc17 09-06
PPTX
Evolution or stagnation programming languages
PDF
LF_APIStrat17_Supporting SDKs in 7 Different Programming Languages While Main...
PDF
An introduction to go programming language
PPT
TypeScript Presentation
PDF
Developing modular applications with Java EE 6 and Enterprise OSGi + WebSpher...
PPT
A First Look at Google's Go Programming Language
PDF
Slides kotlin yajug
PPTX
Php test fest
TDC2016POA | Trilha DevOps - DevOps Anti-Patterns
New Things in C# 6.0
A brief intro to RubyMotion
Golang #5: To Go or not to Go
Kotlin & Swift
Static Type Checking with FlowJs
Crystal
Driving development in PHP
Scala vs ruby
Intro to Crystal Programming Language
Better Swift from the Foundation up #tryswiftnyc17 09-06
Evolution or stagnation programming languages
LF_APIStrat17_Supporting SDKs in 7 Different Programming Languages While Main...
An introduction to go programming language
TypeScript Presentation
Developing modular applications with Java EE 6 and Enterprise OSGi + WebSpher...
A First Look at Google's Go Programming Language
Slides kotlin yajug
Php test fest
Ad

Similar to Swift: The Basics (9)

KEY
iOS UI Testing with Frank
KEY
Future of PHP
PDF
How to try! Swift
PPTX
Akka.net versus microsoft orleans
PPTX
Untangling6
PDF
iOSDevCampDC: A Swift Introduction
PPTX
ELUNA2014: Developing and Testing an open source web application
PPTX
ProtractorJS for automated testing of Angular 1.x/2.x applications
PPTX
Guidelines for Working with Contract Developers in Evergreen
iOS UI Testing with Frank
Future of PHP
How to try! Swift
Akka.net versus microsoft orleans
Untangling6
iOSDevCampDC: A Swift Introduction
ELUNA2014: Developing and Testing an open source web application
ProtractorJS for automated testing of Angular 1.x/2.x applications
Guidelines for Working with Contract Developers in Evergreen
Ad

Recently uploaded (20)

PPTX
Introduction to Artificial Intelligence
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPTX
L1 - Introduction to python Backend.pptx
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
System and Network Administraation Chapter 3
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Introduction to Artificial Intelligence
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
2025 Textile ERP Trends: SAP, Odoo & Oracle
Internet Downloader Manager (IDM) Crack 6.42 Build 41
How to Choose the Right IT Partner for Your Business in Malaysia
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
L1 - Introduction to python Backend.pptx
Design an Analysis of Algorithms II-SECS-1021-03
System and Network Administraation Chapter 3
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
How Creative Agencies Leverage Project Management Software.pdf
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Understanding Forklifts - TECH EHS Solution
Odoo Companies in India – Driving Business Transformation.pdf
Which alternative to Crystal Reports is best for small or large businesses.pdf
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Softaken Excel to vCard Converter Software.pdf
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...

Swift: The Basics