设计模式存在的意义是什么?我觉得它是人们在自然生产中总结出来一种生产经验(设计模式一词最早出自建筑学),使用设计模式进行生产能极大提升效率,我觉得在软件工程中设计模式一定程度提升了效率,提醒了开发者bug出现的大致地方等.
单件模式定义上说生产一个且只生产一个对象实例的特殊类,根据我个人想法在PHP开发中有时会存在$_GLOBAL[”]之类的全局变量,它们可以在整个项目中肆无忌惮得使用,这样有一个严重的问题,类里面的属性是封装的,所以说使用全局变量这个类已经被破坏了!类下次不能重用了.
这时候对类进行处理就势在必行了,我们需要一个私有构造器,一个静态方法,一个静态变量.以自己写的一个fruit类为例子
class fruit{
private
shape;private
color;
public static $apple;
private function __construct(
ItsShape,
ItsColor)
{
this−>shape=
ItsShape;
this−>color=
ItsColor;
}
public static function Create()
{
if(empty(static::apple))
{
static::apple = new fruit();
}
}
public function Design()
{
echo “对象创建成功!”;
}
}
然后调用静态方法你就能实现你用全局变量能做的事情,并且类的结构更加严谨.