php面象对向开发是PHP学习重点,也是PHP优越于ASP的地方,掌握和学习PHP面象对象开发对于用PHP开发的网站设计人员来说必须掌握的基本技巧!我们这里不讨论面向对象的一些条条框框,只根据笔者的想法讨论一些必须要掌握的内容和笔者的一些心得!
传统的开发方法存在的问题或者说是缺点:
a.程序(有些地方说是软件,也不为过,但对于我们一般的网站程序员来说有点过了)重用性差:不能多次使用,每次使用代码要重新写;
b.程序可维护性差:正因为没有重用性,修改代码时很多页面重复应用的地方都要改,这点有点像DIV+CSS排版的优点,我们只要改下CSS代码就可以改了很多页面的样式,当然这里改的是功能!
c.无很好的扩展性能:有时程序做好以后可以会有些改动,或者说是升级,因为不能重复使用扩展性自然会不理想!
面向对像的要素(很多教材说这个很重要,其实只是一个概念,真正用处不大):
1.抽像性
2.封装性:有一定的封装性,安全性也得到进一步保障
3.共享性:不是为一个地方设计开发的,可以多处使用
4.强调对像结构而不是程序结构
重点是讲讲以下的几个注意的地方:
一).类的定义:面象对象在PHP中说到底就是建立类,类的定义很简单用CLASS关键字就可以搞定,类里面会有很多成员属性和成员方法;
1).类的定义,class 类名称 {} 例如数据库操作的类:class cls_mysql {...}
2).我们在建立一个类时第一步定义类里成员的属性:如public $host;public $name;
结合第一步程序基本样式为:
class cls_mysql {
private $host;
private $name;
private $user;
}
3).初始化对象: __construct();这是建立类的第三步:其实这一步目的是为了更好的或者说是方便实例化类,如果没有这一步实例化类时很麻烦:
程序表现为:
class cls_mysql {
private $host;
private $name;
private $pass;
function __construct($host,$name,$pass){
$this->host=$host;
$this->name=$name;
$this->pass=$pass;
}
}
4).写一些功能性函数;写功能性函数里因为没有实例化之前不能用对象属性和方法所以引入了$this这个概念,当然它只能在当前类中使用!
5).析构函数 __destruct();能够在对象释放时自动被调用的方法被称为析构函数;当对象内部的操作执行完毕的时候,__destruct()被调用,然后对象所使用的内存被释放出来。
以上是笔者当年学面象对象开发的自已的一些总结,对于一般理解没什么问题,给学习面象对向者以参考!