解读Yii-分层设计.pptxVIP

  • 3
  • 0
  • 约3.33千字
  • 约 34页
  • 2025-05-08 发布于广西
  • 举报

解读优秀框架之YII

分层设计;一、分层设计;B、面对这些问题,我们是继续抱怨,还是马上解决呢?

伴随着问题的产生,解决问题的方法也会开始被人们探索。

开发者为了解决工程维护难、扩展难、沟通受阻、开发效率低的问题,便开始不断的探索、研究、总结,便产生了分层这门学说

;C、软件架构的演变;D、我们来看看OSI分层(网络七层)和TCP/IP四层

物理层:定义物理设备标准,如网线的接口类型、光纤的接口类型。它的主要作用是传输比特流

数据链路层:将从物理层接收的数据进行MAC地址进行封装与解封装。设备是交换机,数据通过交换机来传输。

网络层:从下层接收到的数据进行IP地址〔例)的封装与解封装。设备是路由器,常把这一层的数据叫做数据包。

传输层:定义传输数据的协议和端口号,如:TCP,UDP。主要是将从下层接收的数据进行分段和传输,到达目的地址后再进行重组。常把这一层数据叫做段。

会话层:通过传输层建立数据传输的通路。主要在你的系统之间发起会话或或者接受会话请求

表示层:主要是进行对接收的数据进行解释、加密与解密、压缩与解压缩等〔也就是把计算机能够识别的东西转换成人能够能识别的东西如图片、声音等〕。

应用层:终端的应用,如FTP,WEB,QQ〕。;2、OSI七层与TCP/IP四层对照表;3、TCP/IP模型各个层次的功能和协议;D、网络分层的优势

1、效劳、接口和协议这三个层次明确、职责别离

2、上层只须了解下层的接口,不需了解内部的具体实现,下层为上层提供效劳。每层只与相邻层交互和通信,与其它层没有业务交集,职责单一、独立性强、层内内聚度高,层与层耦合度低,便于开发,减少沟通。

4、降低问题的复杂度,网络发生故障,可迅速定位故障所处层次,便于查找和纠错,可维护性好

5、各层定义标准接口,使具备对等层的不同网络设备实现互操作,各层之间那么相对独立,一种高层协议可放在多种低层协议上运行,可伸缩性好

6、网络技术革新,只须对局部层进行技术升级,不需全部更新换代。可扩展性强.;E、软件界的三层架构

;1、概念

;2、原???么;3、优势;F、三层架构的变体—三层模式

1、MVC

MVC〔Model-View-Controller,模型-视图-控制器模式〕是软件工程中的一种软件架构模式,HTTP请求首先到controller层,同Controller层进行调度。而Model层与View层实际上是通信的,并且有相应的UI逻辑

;2、MVP

MVP〔Model-View-Presenter,模型-视图-表示器模式〕也是软件工程中的一种软件架构模式,它的核心是减少View与Model层通信,完全解耦Model层与View层的关联,HTTP请求首先到View层,View把请求传递给Presenter,Presenter调度Model层,而Presenter通过视图接口实现View与Model的交互

;3、MVP优劣

优势

1、模型与视图完全别离,我们可以修改视图而不影响模型

2、可以更高效地使用模型,因为所有的交互都发生在一个地方——Presenter内部

3、我们可以将一个Presener用于多个视图,而不需要改变3.4、Presenter的逻辑。这个特性非常的有用,因为视图的变化总是比模型的变化频繁。

5、如果我们把逻辑放在Presenter中,那么我们就可以脱离用户接口来测试这些逻辑〔单元测试〕

劣势

1、视图与表示器交互过于频繁

2、表示器承担职责过多,可能导致这层业务逻辑过于臃肿;G、三层架构与三层模式的关系

1、三层架构属概念层次,是软件分层设计的一种理论,三层模式是开发者根据工程经验总结而来,是三层架构的表现方式。

2、三层模式〔MVC、MVP〕是三层架构的变体

;二、Yii中的MVC;B、业务逻辑层(Model)

1、Yii中Model层做了那些事

1.1实现了ORM

1.2封装了EntrityLayer

1.3封装了Dal

1.4验证

1.5FormModel与DBModel的绑定关系

1.6业务逻辑(局部或整体)

;2、模型分类

Yii模型是CModel或其子类的实例。模型用于保持数据以及与其相关的业务逻辑。Yii实现两种类型的模型:表单模型和ActiveRecord。

表单模型:是CFormModel的子类。表单模型用于从用户表单获取的数据、进行验证。

ActiveRecord:活动记录是ORM的一种实现方式,主要用于对应关系型数据库里的

文档评论(0)

1亿VIP精品文档

相关文档