Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Hacking with Swift 3 - Beginner to Pro - Build 19 Apps
Introduction to the course
Hacking With Swift - Paul Hudson - Introduction to the course (3:56)
Hacking With Swift Frequent Flyer Club (2:06)
Getting to know Xcode 8
Part 1 - Xcode 8 (6:36)
Part 2 - The Project Navigator - Adding files to the project (7:46)
Part 3 - The Navigators Continued (5:03)
Part 4 - Template, Code Snippet, and Media Libraries (4:03)
Part 5 -Utilities Pane - The Object Library and Document Outline (5:57)
Part 6 - Playgrounds - segues - Xcode wrapup (14:40)
Demo
The Swift 3 Language
Variables - Part 1 - Data Types - Type Annotation - Type Inference (5:56)
Variables - Part 2 - Data Types - Type Annotation - Type Inference continued (7:17)
Variables resource
Operators Part 1 - Unary, Binary, Ternary, Assignment, and Remainder operators (4:57)
Operators Part 2 - Increment, Decrement, Minus Unary, Compound Assignment, Comparison, Identity, and Nil Coalescing operators (5:09)
Operators Part 3 - Range, and Logical operators (5:47)
Operator resources
Functions Part 1 - Declaring - Syntax - Return (6:25)
Functions Part 2 - Working with functions (11:03)
Functions Part 3 - Working with more functions (3:17)
Functions Part 4 - Nested Functions (7:10)
Function resources
Nested function resources
Optionals (7:23)
Optional resources
Structs (10:44)
Struct resources
Computed Properties (6:02)
Computed Property resources
Property Observers (5:14)
Property Observer resources
Extensions (6:34)
Extension resources
Protocols Part 1 - Syntax and declaring - Adding functions (8:28)
Protocols Part 2 - Adding properties - Delegation - Static keyword (13:35)
Protocol resources
Enums Part 1 - Raw values - Associated values (9:36)
Enums Part 2 - Implicitly assigned raw values (7:37)
Enums Part 3 - Initializing - recurssive enums (8:42)
Enum resources
Generics Part 1 (9:11)
Generics Part 2 (10:40)
Generic resources
Type Casting - Part 1 - The "as" and "is" operators (9:48)
Type Casting - Part 2 - Using AnyObject and Any (9:27)
Type Casting resources
Nested Types (11:06)
Nested Type resources
Tuples part 1 - Using and accessing values (7:18)
Tuples part 2 - Using them with functions and optionals (6:38)
Tuple resources
Closures Part 1 - Syntax and Optimizations (14:43)
Closures Part 2 - Trailing Closures (10:41)
Closures Part 3 - Capturing Values (8:43)
Closure resources
Control Flow
if statement - else if - nested if's (6:38)
If statement resources
Switch (7:30)
Switch resources
for in loop (8:02)
while and repeat while loops (4:10)
Loops resources
Collections
Arrays Part 1 - Declaring and initialiizing an array (4:34)
Array Part 2 - Accessing and modifying an array (4:47)
Arrays Part 3 - More of accessing and modifying an array (4:34)
Array resources
Dictionary Part 1 - Declaring and initializing a dictionary (7:40)
Dictionary Part 2 - Accessing and modifying a dictionary (6:29)
Dictionary resources
Sets Part 1 - Declaring and initializing sets (5:46)
Sets Part 2 - Accessing and modifying sets (9:33)
Set resources
Strings
Strings Part 1 - Literals-mutability-interpolation-characters (9:41)
Strings Part 2 - Accessing and modifying strings (11:16)
Strings Part 3 - Comparing strings (3:46)
Strings Part 4 - Even more of accessing and modifying strings (5:04)
String resources
Classes - Properties - inits - Subclassing
Classes - initializers - properties (7:50)
Subclassing Part 1 (5:05)
Subclassing Part 2 (4:08)
Class resources
Whats New in Swift 3.0
Part 1 - Depreciations - Method and Parameter names - Omit needless words (10:32)
Part 2 - Lowercase enums and properties - Foundation Framework namings (5:54)
Part 3 - Importing C Funcs - Dispatch - KVO - Verbs and Nouns (8:22)
Swift 3 resources
Beginner Apps - Easy to build apps for the novice
Part 1 - Setting up the UI (9:29)
Part 2 - Outlets and actions - updating the background color with code (12:08)
Part 3 - Updating the labels with values (10:38)
Part 4 - Adding animation (5:21)
RGB resources
Project 1 - Storm Viewer - Get started coding in Swift by making an image viewer app and learning key concepts
Project 1 Intro (1:05)
Part 1 - Setting up (3:53)
Part 2 - Listing images with FileManager (15:59)
Part 3 - Designing our interface (7:35)
Part 4 - Showing lots of rows (11:17)
Part 5 - Building a detail screen (12:15)
Part 6 - Loading images with UIImage (10:33)
Part 7 - Final tweaks - hidesBarOnTap (10:11)
Content resources
Project 1 resources
Project 2 - Guess the Flag - Make a game using UIKit, and learn about integers, buttons, colors and actions
Project 2 Intro (1:10)
Part 1 - Setting up and designing the layout (14:41)
Part 2 - Making the basic game work (13:31)
Part 3 - Guess which flag (5:50)
Part 4 - From outlets to actions (14:54)
Content resources
Project 2 resources
Project 3 - Social Media - Let users share to Facebook and Twitter by modifying project 1
Project 3 Intro (1:11)
Part 1 - Adding Sharing (8:51)
Part 2 - Twitter and Facebook - SLComposeViewController (5:28)
Project 3 resources
Project 4 - Web Browser - Embed Web Kit and learn about delegation, KVO, classes and UIToolbar
Project 4 Intro (1:27)
Part 1 - Setup (12:57)
Part 2 - Choosing a website (6:46)
Part 3 - Monotoring page loads with KVO (12:02)
Part 4 - Refactor for the win (11:34)
Project 4 resources
Project 5 - Word Scramble - Create an anagram game while learning about closures and booleans
Project 5 Intro (2:02)
Part 1 - Setting up and reading from disk with contentsOfFile (12:02)
Part 2 - Prompt user for his answer - closures (13:49)
Part 3 - Prepare for submission using lowercased and indexPath (7:06)
Part 4 - checking the users words (13:43)
Part 5 - Giving the user feedback (6:08)
project 5 content files
Project 5 resources
Project 6 - Auto Layout - Get to grips with Auto Layout using practical examples and code
Project 6 Intro (1:35)
Part 1 - Portrait and landscape constraints (7:49)
Part 2 - Horizontal and vertical constraints with VFL (12:05)
Part 3 - Horizontal and vertical constraints with VFL continued (8:48)
Part 4 - Auto layout anchors (5:21)
Project 6b resources
Project 6b resources
Project 7 - Whitehouse Petitions - Make an app to parse Whitehouse petitions using JSON and a tab bar
Project 7 Intro (0:59)
Part 1 - Creating the basic UI - UITabBarController (8:34)
Part 2 - Parsing JSON - Data and SwiftyJSON (12:57)
Part 3 - Rendering a petition - loadHTMLString (8:06)
Part 4 - Finishing touches - didFinishLaunching (11:47)
Project 7 files
Project 7 resources
Project 8 - Swifty Words - Build a word-guessing game and master strings once and for all
Project 8 Intro (1:41)
Part 1 - Setup the UI (17:37)
Part 2 - loading a level (14:39)
Part 3 - Its play time - index(of) and joined() (7:09)
Part 4 - Property Observers - next level (4:39)
project 8 files
Project 8 resources
Project 9 - Grand Central Dispatch - Learn how to run complex tasks in the background with GCD
Project 9 Intro (1:42)
Part 1 - GCD explained - Why is locking the UI bad? (4:53)
Part 2 - Back to the main thread with DispatchQueue and an alternative to DispatchQueue (16:04)
Project 9 resources
Project 10 - Names To Faces - Get started with UICollectionView and the photo library
Project 10 Intro (1:44)
Part 1 - Setup - Designing UICollectionView cells (9:04)
Part 2 - UICollectionView data sources (3:55)
Part 3 - Importing photos with UIImagePickerController (11:09)
Part 4 - Custom subclasses of NSObject (6:36)
Part 5 - Connecting up the people (8:43)
Project 10 resources
Project 11 - Pachinko - Dive into SpriteKit to try your hand at fast 2D games
Project 11 Intro (1:24)
Part 1 - Setting up - Falling boxes - SKSpriteNode - UITouch - SKPhysicsBody (14:45)
Part 2 - Bouncing balls - circleOfRadius (8:30)
Part 3 - Spinning slots - SKAction (6:15)
Part 4 - Collision detection (10:42)
Part 5 - Scores on the board - SKLabelNode (12:40)
Part 6 - Special effects (9:00)
project 11 files
Project 11 resources
Project 12 - UserDefaults - Learn how to save user settings and data for later use
Project 12 Intro (1:10)
Part 1 - Setup - Reading and writing basics - UserDefaults (9:48)
Part 2 - Fixing project 10 - NSCoding (8:22)
Project 12 resources
Project 13 - InstaFilter - Make a photo manipulation program using Core Image filters and a UISlider
Project 13 Intro (2:08)
Part 1 - Setting up - Designing the interface (10:11)
Part 2 - Applying filters - CIContext and CIFilter (19:27)
Part 3 - Saving to the iOS photo library (7:25)
Project 13 resources
Project 14 - Whack a Penguin - Build a game using SKCropNode and a sprinkling of Grand Central Dispatch
Project 14 Intro (1:18)
Part 1 - Getting up and running - SKCropNode (16:34)
Part 2 - Penguin show thyself - SKAction moveBy(xy duration) (12:49)
Part 3 - Whack to win - SKAction sequences (11:00)
project 14 files
Project 14 resources
Project 15 - Animation - Bring your interfaces to life with animation, and meet switch/case at the same time
Animation intro (0:59)
Part 1 - Setting up - Preparing for action - Switch case and animate(withDuration) (11:04)
Part 2 - Adding more animations using animate(withDuration) (10:58)
project15-files
Project15
Project 16 - JavaScript Injection - Extend Safari with a cool feature for JavaScript developers
Project 16 Intro (2:08)
Part 1 - Setting up (3:15)
Part 2 - Adding an extension - NSExtensionItem (4:49)
Part 3 - What do you want to get (4:05)
Part 4 - Establishing communication (4:36)
Part 5 - Editing multiline text with UITextView (8:43)
Part 6 - Fixing the keyboard - NotificationCenter (10:46)
Project16
Project 17 - Swifty Ninja - Learn to draw shapes in SpriteKit while making a fun and tense slicing game
Project 17 Intro (1:01)
Part 1 - Setting up - Basics quick start SKShapeNode (10:52)
Part 2 - Shaping up for action - CGPath and UIBezierPath (11:59)
Part 3 - Enemy or bomb - AVAudioPlayer (12:36)
Part 4 - Follow the sequence (10:23)
Part 5 - Slice to win (6:13)
Part 6 - Game over man - SKTexture (6:23)
Project 17 files
Project 17
Project 18 - Debugging - Everyone hits problems sooner or later, so learning to find and fix them is an important skill
Project 18 Intro (1:51)
Part 1 - Basic Swift debugging using print() (4:04)
Part 2 - Debugging with assert() (3:14)
Part 3 - Breakpoints (7:31)
Part 4 - View debugging (5:08)
Project 19 - Capital cities
Project 19 Intro (1:26)
Part 1 - Setting up - Up and running with MapKit (9:39)
Part 2 - Annotations and accessory views - MKPinAnnotationView (8:54)
Array Part 2 - Accessing and modifying an array
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock