Swift by Example
eBook - ePub

Swift by Example

Giordano Scalzo

Share book
  1. 284 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Swift by Example

Giordano Scalzo

Book details
Book preview
Table of contents
Citations

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on ā€œCancel Subscriptionā€ - itā€™s as simple as that. After you cancel, your membership will stay active for the remainder of the time youā€™ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlegoā€™s features. The only differences are the price and subscription period: With the annual plan youā€™ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, weā€™ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Swift by Example an online PDF/ePUB?
Yes, you can access Swift by Example by Giordano Scalzo in PDF and/or ePUB format, as well as other popular books in Computer Science & Programming Games. We have over one million books available in our catalogue for you to explore.

Information

Year
2015
ISBN
9781785284700
Edition
1

Swift by Example


Table of Contents

Swift by Example
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Welcome to the World of Swift
The first look at Swift
Let's go to the playground
The building blocks ā€“ variables and constants
Collect variables in containers
Controlling the flow
Transforming the values using functions
Structs ā€“ custom compounds type
Classes ā€“ common behavior objects
Loose coupling with protocols
Check the existence of an optionals value
Enumerations on steroids
A Guess the Number app in Swift
The app isā€¦
Building a skeleton app
Adding the graphic components
Connecting the dots
Adding the code
Summary
2. A Memory Game in Swift
The app isā€¦
Building the skeleton of the app
The menu screen
Implementing the basic menu screen
Creating a nice menu screen
The game screen
The structure
Adding the collectionView class
Sizing the components
Connecting the datasource and the delegate
Implementing a deck of cards
What we are expecting
The Card entity
Crafting the deck
Shuffling the deck
Finishing the deck
Put the cards on the table
Adding the assets
The CardCell structure
Handling touches
Finishing the game
Implementing the game logic
We got a pair
We played a wrong turn
Et voilĆ ! The game is completed
Summary
3. A TodoList App in Swift
The app isā€¦
Building a skeleton app
Implementing an empty app
Adding third-party libraries with CocoaPods
Implementing the Todos ViewController
Building the Todos screen
Adding the entities
Implementing the datastore
Connecting the datastore and the ViewController
Configuring tableView
Implementing TodoViewCell
Swipe that cell!
Adding a Todo task
The add a Todo ViewController
Updating the datastore
Adding a list
Implementing ListViewCell
Building ListViewController
Updating the datastore
Where do we go from here?
Summary
4. A Pretty Weather App
The app isā€¦
Building the skeleton
Creating the project
Adding the assets
Implementing the UI
The UI in blocks
Completing the UI
CurrentWeatherView
WeatherHourlyForecastView
WeatherDaysForecastView
Blurring the background
Downloading the background image
Searching in Flickr
Geolocalising the app
Using CoreLocation
Retrieving the actual forecast
Getting the forecast from OpenWeatherMap
Rendering CurrentWeatherView
Rendering WeatherHourlyForecastView
Rendering WeatherDaysForecastView
Connecting to the server
Where do we go from here?
Summary
5. Flappy Swift
The app isā€¦
Building the skeleton of the app
Creating the project
Implementing the menu
A stage for a bird
SpriteKit in a nutshell
Explaining the code
Simulating a three-dimensional world using parallax
How to implement the scrolling
A flying bird
Adding the Bird node
Making the bird flap
Pipes!
Implementing the pipes node
Making the components interact
Setting up the collision detection engine
Completing the game
Colliding with the pipes
Adding the score
Adding a restarting popup
Summary
6. Polishing Flappy Swift
Adding juiciness
Let there be sounds!
Playing the soundtrack
Shaking the screen!
Integrating with Game Center
What Game Center provides
Setting up Game Center
Creating an app record on iTunes Connect
Enabling Game Center
Creating fake user accounts to test Game Center
Authenticating a player
Summary
7. Cube Runner
The app isā€¦
Introduction to SceneKit
What is SceneKit?
Building an empty scene
Adding a green torus
Let there be light!
Let's make it move!
Implementing Cube Runner
The game skeleton
Implementing the menu
Flying in a 3D world
Setting up the scene
Adding the fighter
Texturing the world
Make it move
Adding the cubes
Adding more obstacles
Adding a few touches
The score
Let's add the music
Summary
8. Completing Cube Runner
Making it a real game
Detecting collisions
Game Over!
Adding the juice
Game Center
Summary
Index

Swift by Example

Copyright Ā© 2015 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: June 2015
Production reference: 1120615
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78528-470-0
www.packtpub.com

Credits

Author
Giordano Scalzo
Reviewers
Eugene Mozharovsky
Alexey Smirnov
Sumit Tiwari
Commissioning Editor
Nadeem N. Bagban
Acquisition Editors
Richard Brookes-Bland
Nikhil Karkal
Content Development Editor
Neeshma Ramakrishnan
Technical Editor
Faisal Siddiqui
Copy Editor
Vikrant Phadke
Project Coordinator
Shweta Birwatkar
Proofreader
Safis Editing
Indexer
Tejal Soni
Production Coordinator
Melwyn D'sa
Cover Work
Melwyn D'sa

About the Author

Giordano Scalzo is a developer with 20 years of programming experience since the days of the ZX Spectrum. He has worked using C++, Java, .NET, Ruby, Python, and a ton of other languages whose names he has forgotten.
After several years of backend development, over the past 5 years, he has developed extensively for iOS, releasing more than 20 appsā€”apps that he wrote for clients, enterprises, or himself.
Currently, Giordano is a contractor in London, where he delivers code for iOS through his company, Effective Code (http://effectivecode.co.uk), aiming at quality and reliability. In his spare time, when he is not crafting retro game clones for iOS, he writes his thou...

Table of contents