Я не буду говорить про ООП, читаемость кода или его модифицируемость в будущем.
Меня просто корежит использование строк для передачи управляющих команд в методы... тем более там где это совершенно не нужно. Вдумайтесь, исключительно для вашего синтаксического сахара, в базовые методы коммуникации вы вставляете сравнение строк! Ну что мешает завести численный дефайн или воспользоваться делегатами (передать сам метод в качестве параметра)?
К сожалению это за последние десять лет стало нормой на столько что можно увидеть абсолютно везде... а потом удивляются, а почему все работает так медленно, и памяти кушает много.
p.s. по теме, если параметр, который подставляют в вызов method() будет браться из-вне, например значение одного из параметров в GET, то я бы порекомендовал пропустить эти параметры через специальный метод-фильтр, конвертирующий строки во внутреннее представление (числовые дефайны или ссылки на методы), он же проверяет их валидность... вот это удобство для программиста, когда выделяется отдельная задача в отдельный метод/класс... ООП тут совершенно не требуется, так как нечего наследовать, хотя может быть использовано просто как синтаксический способ объединить код и данные в одном месте.