Direct attribute access is a pretty old OO discussion. You're welcome to look up the old arguments about accessors and whether they should always be used, but I can't see anyone coming up with anything new at this point. You just have to make your choice.