Skip to content
No description, website, or topics provided.
Swift Objective-C C
Branch: master
Clone or download
Pull request Compare This branch is 2 commits ahead of stevencurtis:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

A simple implementation of an architecture for an AppDelegate

The App Delegate has many responsibilites by default including crash reporting, analytics, setting up the CoreData stack, notifications etc.

This breaks the Single Responsibility principle because the AppDelegate handles too many things.

The AppDelegate is responsible for this mix of things that are caught up in the massive AppDelegate class. Even splitting up the responsibilities into smaller methods just spreads the responsibilities around.

To avoid this we can implement a form of the strategy pattern, where the behaviours of a class are encapsulated by using interfaces.

You can’t perform that action at this time.