什么是QeePHP框架
http://qeephp.com/ 官方网站
QeePHP 是一个快速、灵活的开发框架。应用各种成熟的架构模式和创新的设计,帮助开发者提高开发效率、降低开发难度。
QeePHP SVN 地址: svn://svn.fleaphp.org/trunk/qeephp 。
QeePHP 的主要目标是为开发者创建更复杂、更灵活、更大规模的 Web 应用程序提供一个基础解决方案。
运用 QeePHP 创建应用程序,开发者可以获得更高的开发效率,并且更容易保持应用程序良好的整体架构和细节实现,同时为今后的扩展提供了充分的灵活性。
QeePHP 的主要特征包括:
1. 完全“面向接口”架构,大部分组件都可以单独使用;
2. 具有一个微内核。该内核提供各种基础服务,帮助开发者将各个组件组装起来形成完整的应用程序;
3. 简单易用、功能强大、高性能的数据库抽象层和表数据入口;
4. 为面向对象应用量身订造的 ActiveRecord 实现,让 PHP 应用程序充分利用面向对象技术带来的优势;
5. WebControls 机制,提供了将用户界面组件化的能力,帮助开发者创建复杂易用的用户界面;
6. 支持多种流行的模板引擎,保护开发者现有的知识和技能;
7. 基于角色的访问控制,以及高度可定制的访问控制组件;
8. 丰富的辅助功能,解决开发中最常见的问题;
QeePHP 的构架
QeePHP 是一个与众不同的框架。
QeePHP 遵循“内核最小化,功能插件化”的原则,利用内核实现了一个快速、可扩展的架构。然后在核心之外,通过各种插件提供不同类型的基础服务。
QeePHP 的架构概貌
这种架构模式的优势:
小巧的内核保证了性能,不会因为将各种功能添加到内核中导致框架出现性能问题 具有优秀的可扩展能力和灵活性,而且外围功能的发展不会影响到框架核心 由于各种功能都是插件,开发者可以按照应用程序的需求来选择不同的功能组合 由于核心和外围功能是分离的,框架和应用程序的稳定性和可靠性都能得到保证,不会因为某个功能的问题影响到整个框架和应用 这种架构唯一的劣势可以说是传统保守思想的阻力,就像还有不少 PHP 开发者认为框架不值得使用一样。
采用“内核+扩展”架构的 PHP 框架虽然目前只有 QeePHP 一个。但在 PHP 之外的世界中,这种架构模式早已成为发展方向。
Linux 就是最典型的案例,其“内核+扩展功能”的架构为无数的 Linux 发行版奠定了基础。并且让 Linux 可以顺畅运行在各种硬件环境中,这在传统架构软件中是不可想象的。因此即便是 Windows 7 也顺应发展趋势,采用了类似的架构。
而在 Web 应用开发框架中,Java 世界早就普及了多层分离的架构模式。以快速开发引领 Web 世界革命的 Ruby on Rails 框架也将在第三版和 Merb 进行合并,合并后也是“内核+扩展”的架构模式。这不但证明了这种架构模式的可行性,也是说明这种架构模式是未来的发展方向。我们相信 QeePHP 的架构模式会经受住时间和用户的考验,证明其具备出色的性能、可靠性和扩展能力。
QeePHP框架的主要特征
QeePHP 具备下列特征:
内核+扩展架构设计:性能、灵活性和扩展能力的完美解决方案。 高级 ORM(对象关系映射):为创建真正的面向对象应用提供了支持。 在面向对象应用中,如何处理对象及对象关系的持久化,对 PHP 来说是一项艰巨的任务。QeePHP 采用了“模型元对象”设计来实现全功能的 ORM 系统。每一个业务对象不但可以轻松完成持久化操作,对象间的关系也可以由 QeePHP ORM 系统来自动维护。更出色的是 QeePHP 的 ORM 允许开发者全方位的定制对象的属性、方法、事件,以及行为来满足各种业务需求。
灵活的表单模型设计思想:实现了数据、行为与表现的分离与协作。 表单是应用程序获得用户输入的主要手段之一。过去有过各种各样的表单解决方案,但不管采用何种方式,这些解决方案都没有实现表单数据、行为与表现的彻底分离和协作。QeePHP 的表单模式让开发者可以很轻松的创建大量表单,并将这些表单和业务对象关联起来,再配合表单视图来实现同一个表单多种表现形式、多个表单保持一致外观的目标。应用程序中的表单越多,QeePHP 的表单模型能够创造的价值就越高。
URL 路由双向解析:赋予应用程序构造 URL 的无穷灵活性。 不管是从提高用户体验,还是增强 SEO 的角度考虑,为应用程序提供定制 URL 的能力都是必需的。QeePHP 独有的 URL 路由双向解析让开发者仅仅修改配置文件就能实现对应用程序 URL 的调整。而且出色的适应性让 QeePHP 应用可以根据运行环境采用不同的 URL 风格,最大程度的提高应用的环境适应性。
用户界面组件化:让开发者可以构造模块化的用户界面,极大的减小工作量。 将面向对象的思想引入用户界面后,构造现代 Web 应用的用户界面就变得易如反掌了。页面上任何独立或重复出现的区域都可以封装为一个单独的组件,并且做到和其他部分的完全解耦。再结合视图继承、区块、片段等手段,构建任何复杂度的用户界面都不是问题。
Web 界面开发工具:将重复劳动削减至最低程度。