News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Mathias Verraes:
Verbs in Class Names
October 07, 2013 @ 11:40:07

Mathias Verraes has an interesting post to his site suggesting that using verbs in class names can make for easier to understand and easier to read code - more "natural language."

When you first learned Object Oriented Programming, somebody probably told you that objects map to things. And that still holds true most of the time. And maybe somebody explained it using the simple heuristic to "look for the nouns", which can indeed be a great discovery technique. But then somebody probably phrased that as "class names should not have verbs in them". To me, that rule is severely limiting the possibilities for your models. So here are some cases where I prefer to use verbs.

He suggests that class names, in some cases, could be used as "messages" to the developers using them in the OOP. He includes some suggestions (based on the suggestion of nouns from another post) that use verb-names to convey what they're doing. He also talks about three specific cases - specifications, exceptions and interfaces - and includes samples of each using this idea of verb-based class names.

0 comments voice your opinion now!
verb class naming noun alternative example

Link: http://verraes.net/2013/10/verbs-in-class-names/

blog comments powered by Disqus

Similar Posts

Ian Barber's Blog: Linear Regression in PHP (part 2)

DevShed: Centralizing the Validation of Data with the Observer Pattern in PHP

Jani Hartikainen's Blog: Unit testing 3: Writing tests for existing code

PHPit.net: Creating a PHP Settings Class

Gonzalo Ayuso: Managing Windows services with Symfony/Process and PHP


Community Events

Don't see your event here?
Let us know!


example composer community extension symfony2 release podcast api laravel opinion interview php7 introduction performance version library install application framework series

All content copyright, 2015 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework