PRADO 和 yii 什么关系

只知道作者是一个人,为什么要开发yii呢?

PRADO 有性能瓶颈把

Yii属于高性能的而且全面PHP5的

明白了,谢谢!

Prado是Yii的前身,Yii使用了很多Prado里的代码。Prado是模仿ASP.NET的,而Yii则完全围绕着MVC。

PRADO是在PHP5环境下的一个基于事件驱动和基于组件的WEB应用开发框架。使用PRADO开发WEB应用,你主要需要做的工作就是使用已有的组件,设置组件( Componet)的属性,为控件(Control )组件的各种事件编写对应的处理函数,然后把这些组织成一个个的页面。

下面用一个简单的例子来说明PRADO框架的工作原理。假定我们现在要使用PRADO来开发一个常见的登录页面。首先我们选择PRADO中的2个TTextBox控件和1个TButton控件来分别对应用户名输入,密码输入和提交按钮。然后把对应密码输入的TTextBox控件的TextMode属性设置为"Password",并为TButton控件的OnClick事件指定一个处理函数 login。最后把这些控件放到页面模板的合适的位置上,一个功能完善的登录页面就实现了。控件会自己处理好如何显示数据,如何得到用户输入的数据,如何响应用户的操作等这些事情。例如,TTextBox控件会显示一个输入框让用户输入;用户输入的密码会被显示为*号,而开发者在代码中可以通过读取 TTextBox控件的Text属性来获取用户实际输入的密码;当用户点击了提交按钮的时候,login 函数将会被自动调用。这和传统的PHP编程处理方式很不一样。使用传统的PHP编程方式,开发人员需要使用HTML标签来显示用户输入框和按钮,同时需要自己解析POST数据来获得用户的输入以及判断按钮是否被点击了等等这些事情。

PRADO

基于组件的编程方式使代码的重用极为方便。一些重复性的单调的工作比如表单输入的验证,页面状态的管理等都可以使用PRADO已经提供的组件来处理。开发者也可以通过继承现有的组件或者组合现有的组件来开发新的组件满足要求。另外一些新的组件即将发布。

总来的说,PRADO 为PHP的编程人员提供了以下的有益之处:

可重用性 - 符合PRADO组件标准的代码是高度可重用的。

易于使用 - 使用PRADO组件非常简单,通常只需要配置它们的属性,编写相关的事件处理函数。

健壮性 - PRADO让开发者不再被那些令人厌烦的有很多错误的的代码所困扰。它的代码都是有对象,方法和属性组成的;而不是Url地址和各种query参数。 PHP5最新的Exception处理机制也被引入进来,让开发人员能够精确定位到错误代码的所在行数。

高效 - PRADO开发的Web应用运行很快。PRADO实现了一种缓存机制,使用其开发的应用的运行效率能够和那些通常使用的模版引擎开发的应用的运行效率相媲美。

团队协作 - PRADO允许内容和表现方式分离。组件,尤其是页面,将内容(逻辑)和表现方式分别保存在不同的文件中。

目前已经有很多PHP的框架,Mojavi, WACT , PHP.MVC, Phrame等等。它们主要是建立一套松散的PHP代码组织方式(比如 Model-view-controller)。其中一些更多的面向开发一个内容管理系统,并提供了诸如用户管理模块等更多的功能。

和这些框架相比,PRADO更专注于建立一个代码重用和事件驱动的编程标准。如果你曾经用 Delphi或者Visual Basic等这些RAD开发工具来开发Windows程序的话,那么你会发现使用PRADO来开发WEB应用是非常类似的,你可以很快就掌握PRADO来进行WEB应用的开发。大多数情况下,你要做的仅仅是设置组件的属性和响应组件的事件。更高层次的代码重用,比如前面所说的用户管理模块,可以基于 PRADO组件来实现。

PRADO的设计思想起源于Apache Tapestry项目想到的。