To ensure that @properties to work effectively The category needs to be a subclass of object. when the class is not really a subclass of item then The 1st time you try accessibility the setter it truly will make a completely new attribute With all the shorter name in place https://medium.com/@CentralPark104/