Book Image

iOS 13 Programming for Beginners - Fourth Edition

By : Ahmad Sahar, Craig Clayton
Book Image

iOS 13 Programming for Beginners - Fourth Edition

By: Ahmad Sahar, Craig Clayton

Overview of this book

iOS 13 comes with features ranging from Dark Mode and Catalyst through to SwiftUI and Sign In with Apple. If you're a beginner and are looking to experiment and work with these features to create your own apps, then this updated fourth edition gets you off to a strong start. The book offers a comprehensive introduction for programmers who are new to iOS, covering the entire process of learning the Swift language, writing your own apps, and publishing them on the App Store. This edition is updated and revised to cover the new iOS 13 features along with Xcode 11 and Swift 5. The book starts with an introduction to the Swift programming language, and how to accomplish common programming tasks with it. You'll then start building the user interface (UI) of a complete real-world app, using the latest version of Xcode, and also implement the code for views, view controllers, data managers, and other aspects of mobile apps. The book will then help you apply the latest iOS 13 features to existing apps, along with introducing you to SwiftUI, a new way to design UIs. Finally, the book will take you through setting up testers for your app, and what you need to do to publish your app on the App Store. By the end of this book, you'll be well versed with how to write and publish apps, and will be able to apply the skills you've gained to enhance your apps.
Table of Contents (33 chapters)
1
Section 1: Swift
10
Section 2: Design
15
Section 3: Code
26
Section 4: Features

Understanding how saving and loading works

Open the Misc folder in your project, and open the JSON folder. If you click on any one of the JSON files inside, you'll see that each restaurant is uniquely identified by a numeric identifier. For example, the identifier for The Tap Trailhouse is 145237, as shown in the screenshot below:

When you save photos and reviews to Core Data, you will save them together with this identifier. Then, when a particular restaurant is displayed in the Restaurant Detail screen, RestaurantDetailViewController will use the identifier to search for reviews and photos of that restaurant and display them in collection views, as shown in the screenshot:

If there are no reviews or photos, you'll use the NoDataView to inform the user there are no reviews or photos, as shown in the screenshot:

You'll need a way to store the restaurant identifier...