This has happened twice or thrice in one project. The requirement was to have a certain functionality in one viewController and then that feature was moved to another viewController.
I made a protocol that had declaration for those features but that doesn't help much. Every-time the requirement changes, I have to copy-paste all the methods implementations from one file to another and and then declaration of that protocol from one header-file to another.
Is there a way that I can have implementation in one place and then just somehow mix it with one class and then easily remove add it to another class like ruby mixins or for that matter traits in Scala ?