对Brandon Savage在PHP中的实用设计模式的评论将包括我对书籍的看法和印象,以及自我出版的方面。非常感谢Brandon给了我评论副本。
设计模式是关于常见问题的常见解决方案。钥匙要点……它们是概念,而不是蓝图;想法,未完成设计。
…他们为原本困难的情况增添了清晰度。
- Brandon Savage,PHP中的实用设计模式
>如果我在Dreyfus模型术语中表达了重要的事情,他声称这本书将在那里将新手变成一个胜任的级别的开发人员,而不会使他们遭受高级初学者的错误,而实际上,这种学习方法并非完全可能 - 那是可能的 - 只是人类知识获取过程的工作原理。
>从TOC中可能不会过分明显,因此本书中解释的模式是:
> […],例如,注册表模式(本书中未涵盖)…
在不同的缓存示例(APC和memcache)的示例中实现了该模式,并且两者都通过工厂产生,该工厂都注入了任何服务需要缓存组件中。
> 另一方面,我绝对喜欢复合模式的解释及其在非常有趣的树示例上的演示 - 作者构建了一棵复合树,具有任意数量的嵌套节点级别,该级别非常适用于菜单构建,层次结构,以及更多 - 我对装饰图案的解释感到特别兴奋。它是以一种非常平易近人的方式完成的,并且以良好的可用示例进行。尤其是这种模式是我一直很难在被问到时用蓝色解释的人,而且我还没有找到比本书更好的细分。
>在本书的一个实例中,布兰登说,模型是MVC应用程序中最重的举升机,其中包含所有业务逻辑和验证代码。这是我无法接受的陈述 - 我可以想到一个不正确的例子:拉拉维尔(Laravel)。随着Laravel 5的出现并添加表格请求,这些模型将增长更轻。
>
“在整本书中,布兰登在没有链接到它的情况下(四个帮派)提到了高级概念(ORM,继承,依赖注入)和第三方内容,假设读者熟悉这一切。尤其是四个场合提到了四个团伙,并且至少可以与设计模式的链接使用 - 否则“新手”和“高级初学者”读者只会在混乱中浏览一下句子。创建好的模型是任何开发人员铲球最复杂的任务之一。 长期以来,Zend Framework文档认为没有Zend_model类,因为创建模型是应用程序开发过程的大部分。 要创建zend_model将是假设每个人都可以或想使用相同的模型结构,这是不可能的,这是我本章中未包含任何代码的相同原因。 >这确实有意义,但以最简单的方式体现了价值,网关和存储对象,这对首次被引入域模型模式的人们非常有益。我认为,在本书中,域模型模式过于忽视,并且太过理论上了。
知识的诅咒
在其他情况下,段落结构的编写方式远远超出了新手对中级用户的理解水平:
>这是一个古老的问题,许多开发人员一直都在努力:如果我努力颠倒依赖关系而不是在课堂内创建对象,那么我该如何创建在运行时需要的依赖项,可以一定要注入?
>这不是读者所消耗的水平,他们需要这本书熟悉模式。完全了解这句话的读者可能已经完全熟悉了书中的所有模式,从而使真正的目标受众质疑。我相信这是由于萨维奇先生遭受了所谓的“知识诅咒”的困扰。
wikipedia将其定义为:
自我出版知识的诅咒是一种认知偏见,它导致更有信息的各方发现从较小的政党的角度考虑问题非常困难。 在没有正式训练以传达自己所知道的东西的专业人士中,知识的诅咒是一个非常普遍的事情,但也确实会随着时间,经验和反馈而失去影响。这也是为什么我们在站点点鼓励人们就帖子提供诚实的反馈,这就是为什么我们试图使每个新出版物都更简单,更简化的事情。没有人对诅咒免疫 - 有些人受到它的影响更大。
>
的瘟疫
>近年来,自我出版似乎确实脱颖而出。那些不诉诸LeanPub的人像Brandon一样完全独奏。尽管这种方法确实确实加快了过程,并允许专家以令人震惊的快速速度将高质量的内容放在感兴趣的各方的手中,但它还允许更多的错误,不良内容和错别字可以通过。
不幸的是,困扰其他自我出版作家的大多数问题也困扰着这本书。缺乏经验丰富的编辑,似乎没有关于内容,形式甚至语法和句法准确性的指导,这是一种经常弄乱的语言的人。
>也就是说,如果您是一个中级开发人员,希望在人们周围的人们谈论他们谈论的会议上陷入模式,并从那些尴尬的点点头,但您不理解一件事情 - 一定会得到这本书。如果您是新手,我不建议您购买这个 - 不仅是。首先掌握您的“ Echos”,了解作曲家是什么,然后将您的牙齿沉入此。
实际上,如果您是高级初学者(初学者应该从非常基础的开始),但我仍然对您感兴趣,我会为您提供鼓掌,并提供以下资源以在您深入研究之前进行查看:
>在可学习的
上,面向对象的php元素>
>面向对象的php>装饰器模式如何在php?
>
设计模式如何改善开发人员之间的沟通?>使用设计模式有任何缺点吗? ,如果不正确使用,它们也可以引入复杂性。过度使用设计模式可能会导致不必要的抽象,并使代码更难理解和维护。因此,只有在他们真正解决一个反复出现的问题时,才明智地使用它们。
以上是图书评论:PHP中的实用设计模式的详细内容。更多信息请关注PHP中文网其他相关文章!