tl;dr; There is a neat little library for handling NSUserDefaults over here. For a project I've recently worked on, I've created a settings class which mirrors its properties into NSUserDefaults. I did so by overriding the getters and setters and directly forwarding the calls to NSUserDefaults. After adding one