DEV Community

EmpowerApps.Show

Modularizing in Xcode with Abbey Jackson

Guest

Sponsors

BrightDigit
  • Specialize in helping businesses build apps for iPhone, iPad, Mac and Apple Watch
  • 10 years of experience developing for a variety of Apple platform
  • Helping dev shops which lack experience with Apple platforms and Swift
Contact me if you need help today.
We have an opening for sponsors
  • Do you have a product or service which can target our ever growing community of developers as well as technology and business leaders? 
Contact me today if you are interested in sponsoring or go to our Patreon page.

Themes from Conferences

  • The Importance with Meeting New People
  • Learning Old Features
  • Trying to Deep Dive into SwiftUI and its Future
  • The Benefits of SwiftUI for Designers
  • Comparing HTML and SwiftUI

Breaking Down How Xcode Works

  • How Different Components in Xcode Can Help Organize Your Code
  • How an Xcode Project Works
  • How Files result in Targets
  • Differences between Targets and Build Configuration
  • Dealing with Target Dependencies
  • Testing with Targets and Xcode
  • How Workspaces Differ from Projects

Modularizing Components

  • What are the best ways to organize your product?
  • Modularizing Your Persistence Layer
  • Importance of TDD and Protocol Oriented Programming
  • Other examples of modularizing: Network, Feature-cased, Authentication, User Profile, Location
  • Following Apple's SDK Framework Example

Dealing with Source Control

  • Using Git Submodules
  • Dependency Management Tools (i.e. SPM, Cocoapods, Carthage)
  • Using SDK Targets
  • Swift Package Manager

The Benefits of Modularizing

  • Decrease Build Times
  • Share Code and Functionality
  • Optimize Your Build Pipelines

Post-September Purchasing Choices

  • Apple Watch Series 5
  • iTunes vs App Store Gift Cards
  • iMac Backpack

Social Media

Twitter - @brightdigitFacebook - BrightDigitLinkedIn - BrightDigitInstagram - @brightdigit
Patreon - empowerappshow

★ Support this podcast on Patreon ★

Episode source