Industrial iOS Development

Industrial iOS Development

In this course, we're going to get you coding and confident with the iOS platform. We'll teach you the tools and ecosystem needed to build modern mobile applications. But that's just the beginning.

Modern mobile app development calls for modern development methods–and that's what sets this course apart. You will learn and practice the techniques to deliver a quality mobile app with speed and safety. Techniques like automated testing, continuous delivery, and clean user interface architecture, all applied in the iOS environment.

We won't be reading this to you from a slide deck, either. You'll get your hands dirty building a real, store-ready iOS codebase. You’ll have engaging discussions with our instructors and your fellow learners. And we will tackle those store-ready iOS codebase problems together.


Workshop Editions

Our online version of this workshop takes place over 14, 120-minute sessions that span 7 weeks. We can customize this schedule to best meet your needs. Here are the main topics you will learn:
  • Xcode setup and configuration
  • Deploying to the App Store
  • Automating the build and deployment
  • Optimizing for delivering early and often
  • SwiftUI
  • Using Previews for SwiftUI Components
  • Apple Human Interface Guidelines
  • Dealing with the “massive ViewController”
  • UIKit and SwiftUI interoperability
  • Working effectively with device APIs
  • Backend API interaction patterns
  • Decoupling domain concerns from implementation details
  • Dependency injection
  • Automated UI and Unit Testing
  • Isolation for Testability
  • Spoofing external calls
  • Testing Anti-Patterns
  • Patterns for handling failure
  • Implementing a circuit breaker
  • Graceful degradation
  • Backward compatibility
  • Adding telemetry to your iOS app
  • Monitoring your app’s telemetry
  • Experiments, emergent design, and empirical product thinking
  • Tests you can trust
  • Trunk-Based Development
  • Feature Toggles
Here is a typical 4-day agenda. We can customize this agenda to best meet your needs:
  • Get Started Right:
  •  Xcode setup and configuration
  •  Deploying to the App Store
  •  Automating the build and deployment
  •  Optimizing for delivering early and often
  • Make Your Users Awesome:
  •  SwiftUI
  •  Using Previews for SwiftUI Components
  •  Apple Human Interface Guidelines
  •  Dealing with the “massive ViewController”
  •  UIKit and SwiftUI interoperability
  • No App Is An Island:
  •  Working effectively with device APIs
  •  Backend API interaction patterns
  •  Decoupling domain concerns from implementation details
  •  Dependency injection
  • Make It Safe To Change:
  •  Automated UI and Unit Testing
  •  Isolation for Testability
  •  Spoofing external calls
  •  Testing Anti-Patterns
  • Make It Safe To Fail:
  •  Patterns for handling failure
  •  Implementing a circuit breaker
  •  Graceful degradation
  •  Backward compatibility
  • Instrument, Experiment, and Learn Rapidly:
  •  Adding telemetry to your iOS app
  •  Monitoring your app’s telemetry
  •  Experiments, emergent design, and empirical product thinking
  • Deliver Value Continuously:
  •  Tests you can trust
  •  Trunk-Based Development
  •  Feature Toggles

What Will You Learn?

outcome

How to design your domain logic and decompose your apps

outcome

Testing strategies that reduce build time and keep your apps safe

outcome

Common anti-patterns to avoid in iOS applications

outcome

How to evolve your app quickly and reliably without introducing defects

outcome

How to continuously integrate, build, deploy, and monitor your apps

outcome

How to deliver value continuously with zero-downtime deployments

Target Audience

This workshop is designed for any level of iOS development experience. Exercises involve coding and will require some programming skill.

Instructors