php分层模式
此篇文字,写入5月1日,当时出于一些目的,学了php,在T字横线上发展了一下.
关于分层模式,最早学过C#,接触了三层架构,java中的MVC;java还有多层架构;在MVC之前有过model1,model2。今天想写写php,想照着java中的路子写,虽然都声称面向对象的语言,但是路数还是有差别。
分层的核心思想应该就是,解耦和,每层各司其职。
java中的多层架构:
数据持久层:DAO(data?access?object)或者还定义了一个IDAO接口;数据访问对象没有业务逻辑,针对每一张表或者说每一个实体的CRUD。框架有,dbutils(算不上框架,工具包),hibernate,ibatis->myibatis等。
Model层,还有人叫实体entity还有人叫bean,虽然它可以是个bean,个人认为bean的概念并不准确,bean的概念更广。这一层贯穿与整个系统,DAO将表数据转移到model对象中。与model携带数据传递。这一层就是要面向对象.
Service层,业务逻辑层:负责系统逻辑,控制事务,等;调用DAO完成数据持久化。其中web?service,cxf,hessian便是与这层相关的技术。
web层,显示数据与用户交互;可以由servlet,jsp(jsp之后也会被编译成servelt)担当;使用struts的话web层可分Action层,分发用户请求调用Service层逻辑,分发处理结果数据到jsp,servlet。
php中,view层有模板来充当,模板的核心原理就是替换字符.一个月过去了,这php就和当年c#一样不敢谈了.但是拿过来php的代码我还是能看懂的.