在php中避免访问修饰符的原因

use*_*291 4 php oop private protected public

什么是有效的理由不使用关键字公共,私人,受保护的PHP?

故事:我已经开始了一个项目,其团队在他们的代码中积极使用访问修饰符(甚至明确地"公开"),并想说服我这样做.我总是觉得这种东西在像php这样的动态语言中完全没用,但我意识到我的直觉在技术讨论中几乎不是一个论点.因此,我正在寻找一个可靠,清晰的解释为什么访问修饰符在php中无用(甚至有害).

我知道已经存在一些类似的主题

但是我发布这个有几个原因

  • 我不是在问我是否应该使用"公开".我已经没有使用它了.
  • 我明确没有兴趣听到为什么访问修饰符是好的(我知道它们很糟糕,我只需要专家来确认).
  • 如果您要告诉我"最佳实践"和"OOP原则",请不要打扰.

TIA

Gor*_*don 8

有效的理由不使用关键字public,private,php?


tro*_*skn 8

private修改是-恕我直言-已经被滥用.它的问题在于它无法扩展类.但更重要的是,它是一个概念,导致人们编写面向类的代码,而不是面向对象的代码.

我没有牛肉protected用于物业.事实上,我认为它应该是唯一使用的范围.protected方法通常很麻烦,因为它使测试更难.