Entities properties : public, protected or private ?

juyn

Xavier Dubois 🇫🇷

Posted on August 14, 2019

Entities properties : public, protected or private ?

We all write a lot of models and entities, specially when we are working with frameworks like Symfony.

But, when you code them, you have to make a choice for the properties. Should they be public, protected or private ?

Symfony made a choice: private.
Laravel chose public.

My coworkers, inside our Symfony projects code them either protected or private, with a bunch of accessors.

I prefer the Laravel's way, and always code them with a public visibility.

I made that choice because most of the time (like 99% of the time), accessors are useless, they don't transform the data. I prefer access them with object->property instead of object->getProperty()

And you, what visibility is your default choice, and why ?

💖 💪 🙅 🚩
juyn
Xavier Dubois 🇫🇷

Posted on August 14, 2019

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related