Jer*_*ere 3 php singleton object instances
我被要求用PHP做一个项目,并确保它是面向对象的.我已经完成了OO,我已经完成了PHP,但从来没有.
OO PHP(继承/多态)之外的主要好处似乎是代码组织.没关系; 我这样做.但是,如果我真的应该为每个"对象"创建实例,那么我会陷入困境.
对我而言(也许我在这里天真),一个Web应用程序就是要做出非常简短的无状态请求来改变或检索数据库中的记录.对象不能在请求之间保留.因此,从数据库加载数据,从该数据构造对象,进行小更新,将数据从对象保存回数据库,然后抛弃对象,感觉相当无意义.加载/保存代码似乎是无用的工作.[澄清:浪费开发时间,不处理时间......不太关心开销]
另一种方法是让一堆单例(或带有静态方法的类)只为数据库层提供一个漂亮的,有组织的抽象层.我想以这种方式编写代码并不会感觉真的是OO.我错过了什么或者那种风格好吗?
是的,你可以总结一下OO作为"代码组织"的好处; 但是对于所有语言(不仅仅是PHP)都是如此.实际上,它不止于此; 它是关于你如何看待你的数据结构和算法,即它们如何映射到问题域中的概念,它们如何相互关联(所有权,亲子,多态等),以及它们如何暴露出干净,一致的彼此接口(封装).如果这些概念对您的应用程序有益,并且超过了额外的开发时间而不是快速而苛刻的程序解决方案,那么就去实现它.
我不认为持久性与它有任何关系.
我想你应该质疑为什么你被问到"确保它是OO".这似乎是一个非常随意的请求,没有进一步的理由.通常情况下,方法应该是以最符合要求的方式编写应用程序,而不是任意想法......
归档时间: |
|
查看次数: |
137 次 |
最近记录: |