架构说明

Ecos采用MVCL的设计模式(model-view-controller-library),采用MVCL的优势在于:

  • 将业务逻辑和数据库抽象层及用户界面剥离开
  • 容易保证不写重复的代码
  • 把不同类型的代码分开, 易于维护

数据模型抽象层(M)

一个model承载着着应用的数据和维护数据的规则, 在Ecos中models主要用来管理对应的数据库表的互动规则,通常情况下, 数据库中的一个表对应着一个model(但不一定是真实model, 可能是虚拟model, 之后会详细介绍).

视图(V)

视图代表着应用程序的界面. 在Ecos中, 视图通常为使用smarty标签的html文件, 视图的主要作用是提供数据到浏览器.

控制器(C)

控制器充当着视图和MODEL之间的胶水, 在Ecos中, 控制器处理从浏览器发起的请求, 从models中获取数据, 然后将数据传到视图呈现给用户.

业务逻辑库(L)

业务逻辑库, 完成所有的业务逻辑的处理, 通过调用models对数据进行操作, 不直接操作数据.从而将业务逻辑与数据处理隔离, 当然也包括框架本身所提供的基类