The purpose of object-oriented programming