Real-World iOS Projects

Real-World iOS Projects

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 5h 31m | 1.47 GB

Build a custom web browser, a local Notepad app, and an iTunes movies browser using Swift 4 and the native iOS Cocoa Touch development platform

Do you have some programming experience from a school course? Have you dabbled in your free time, but are using outdated technology in your current career? Are you overwhelmed by the complexity of the iOS ecosystem?

Well, fear not! With this course, we’ll get you started right away. You’ll be taken through the development of three native iOS applications, using the core UIKit application framework and the latest version of Apple’s new and exciting Swift programming language. We’ll start by showing you how to get Xcode and guide you through its help documentation and debugger. Then you will build your first app from scratch – a custom web browser with your own custom controls, page history, and sharing functionality.

Once the web browser is ready, you’ll head straight into your second project, which is a note-taking app, which will permit full text editing and will store its data as JSON on your local device’s file system. Your final project will be a rich, smooth, and colorful media-heavy app that navigates movies in the iTunes store, smoothly browses through posters, and explores their details.

By the end of the course, after focusing on getting real results, you’ll be equipped with the skills to get started turning your development career dream into a reality!

This tutorial-based course will guide you through the creation of three small, but feature-rich and beautiful, native iOS projects. Best practices will be provided throughout, but with a view to patterns and syntax that are approachable for Swift/Cocoa Touch beginners. Development sections are supported by quizzes and, in later sections, suggested tasks to guide the learner in adding features and developing independently.

What You Will Learn

  • Build your own professional and modern iOS applications using Swift 4
  • Create various kinds of project, managing files, accessing Xcode’s documentation systems, and using the LLDB debugger.
  • Develop apps with the UIKit/Cocoa Touch UI frameworks using the most essential core components, which are central to all native iOS applications
  • Discover the essential Cocoa design patterns on which Apple (and most third-party) frameworks are based
  • Encode and decode JSON data
  • Interact with the iOS file system
  • Explore system networking features to develop your own applications that interact with RESTful web services
  • Delve into, and master, the most essential features of Swift 4 for iOS development
  • Get introduced to using secondary development frameworks, such as Apple WebKit
  • Work with Xcode 9, iOS 11, and Swift 4, Apple’s cutting-edge development technologies
Table of Contents

1 The Course Overview
2 Getting Xcode
3 A Quick Tour of Xcode
4 Running the Template App
5 The Xcode Debugger and Breakpoints
6 Accessing Documentation in Xcode
7 Creating the Project
8 Creating the Basic User Interface
9 Creating the Web View Controller User Interface
10 Introduction to Swift Optionals
11 Coding the Web View Controller
12 Configuring Application Transport Security (ATS)
13 Adding a Toolbar
14 Adding a Search Controller
15 Adding a URL Property with Custom Accessors
16 Protocols and the Delegate Pattern
17 Wiring Up the Search Bar
18 Adding Share Functionality
19 Saving the Last URL to User Defaults
20 Improving the Search Bar and Controller Configurations
21 Improving the Toolbar Layout
22 Enabling and Disabling the Back and Forward Buttons
23 Adding a Simple Loading Indicator
24 Intro and Creating the Project
25 Creating the Note Model Interface
26 Implementing the Note Model
27 Auto-Generating the Note Title
28 Creating the Data Source Interface
29 Implementing the Outline Data Source
30 Swift Error Handling
31 Preparing for Loading and Saving
32 Adding Loading and Saving
33 The NotificationCenter Pattern
34 Using Notifications to Save the Data Source
35 Introduction to Dispatch and Closures
36 Adding Dispatch to Load and Save
37 Configuring the SplitViewController
38 Preparing the MasterViewController
39 UITableViewDataSource
40 Adding TableView Editing
41 The DetailViewController User Interface
42 Preparing the DetailViewController
43 Passing the Note Model
44 Configuring the DetailViewController
45 Handling the Software Keyboard
46 Using the TextViewDelegate and Creating a NoteUpdateDelegate Protocol
47 Passing Back Note Changes to the MasterViewController
48 Updating the DetailViewController after Note Delete
49 Getting Started
50 Preparing an Xcode Playground
51 Decoding Simple JSON Properties
52 Custom Property Name Mapping
53 Decoding Nested Objects
54 Date Decoding
55 Creating the Outline Data Source
56 Preparing to Fetch the Movie Feed
57 Switch Tuple Pattern Matching
58 Processing the Movie Feed Results
59 Laying Out the Basic User Interface
60 Creating an Image Cache Controller
61 Creating a Custom Collection View Cell
62 Collection View Data Source
63 Customizing the Collection View Layout
64 Handling Cell Reuse
65 Passing Data to the DetailViewController
66 Laying Out the DetailViewController
67 Displaying Movie Properties in the DetailViewController
68 Adding Pull-to-Refresh
69 Adding a Loading Indicator