Beginning with the basics, this book outlines the steps to set up an iOS development environment, together with an introduction to using Swift Playgrounds to learn and experiment with Swift.
The book also includes in-depth chapters introducing the Swift programming language, including data types, control flow, functions, object-oriented programming, property wrappers, structured concurrency, and error handling.
A guided tour of Xcode in SwiftUI development mode follows an introduction to the key concepts of SwiftUI and project architecture. The book also covers creating custom SwiftUI views and explains how these views are combined to create user interface layouts, including stacks, frames, and forms.
Other topics covered include data handling using state properties and observable, state, and environment objects, as are key user interface design concepts such as modifiers, lists, tabbed views, context menus, user interface navigation, and outline groups.
The book also includes chapters covering graphics and chart drawing, user interface animation, view transitions and gesture handling, WidgetKit, Live Activities, document-based apps, Core Data, SwiftData, and CloudKit.
Chapters also explain how to integrate SwiftUI views into existing UIKit-based projects and integrate UIKit code into SwiftUI.
Finally, the book explains how to package up a completed app and upload it to the App Store for publication.
Along the way, the topics covered in the book are put into practice through detailed tutorials, the source code for which is also available for download, and over 50 online knowledge test quizzes.
The aim of this book, therefore, is to teach you the skills to build your own apps for iOS 18 using SwiftUI. Assuming you are ready to download the iOS 18 SDK and Xcode 16 and have an Apple Mac system, you are ready to get started.
Neil Smyth has more than 25 years of experience in the IT industry, encompassing software development, project management, and marketing. He holds a Bachelor of Science in Information Technology and multiple certifications, including A+, Security+, Network+, Project+, Java Associate, and Microsoft Certified Professional. Neil is also a Certified Internet Webmaster (CIW) Database Design Specialist.
As the co-founder and CEO of Payload Publishing, a technical content publishing company, Neil has authored numerous books in the acclaimed "Essentials" series, covering a wide range of programming and system administration topics. His notable works include Android Studio Development Essentials, Jetpack Compose Essentials, iOS App Development Essentials, and Ubuntu Essentials.