关于实验一的框架选择的原因及其说明
软件体系结构实验一我选择Yii2 FrameWork来开发应用系统。为什么选择它作为我开发应用系统的框架呢?原因有以下几点:
1.易于安装
对于web开发人员来说,时间就是金钱,没有人愿意把宝贵的时间花在一个复杂的安装和配置过程。安装处理使用Composer(PHP依赖包管理工具)。如果想要描述安装的过程,Sitepoint最近发表了一篇很棒的文章,在这儿,我倾向于使用基本的应用程序模板,即使我的网站有一个单独的前端和后端组件。相反,我选择使用一个模块给我的网站的后台部分。(Yii模块是最好的描述,小应用驻留在主应用程序里面)。
2. 面向对象
Yii是一种纯粹的面向对象框架,并且利用PHP的一些更高级的功能,包括延迟静态绑定,SPL类和接口,和匿名函数。所有的类名称空间,它允许你利用PSR-4兼容的自动装载器。这意味着包括Yii 的 HTML的帮助类一样的简单。Yii 也允许你定义别名来帮助简化你的命名空间。
3. 高度可扩展性
Yii 看起来就像一件样式很棒的西装,但也非常容易根据你的需求来进行定制。 实际上框架的每一个组件都是可以扩展的。
4. 简化的安全方案
安全性是任何web应用的重要组成部分,幸运的是Yii有许多很棒的特性能帮你减轻负担。Yii 带来了一个 安全性 应用程序组件,它暴露了一些可以帮助可以用来创建一个更加安全的应用程序的方法。Yii 会自动对所有非安全 HTTP 请求方法 (PUT, POST, DELETE) 的可用CSRF令牌进行检查, 并将在你使用 ActiveForm::begin() 方法创建你的开发表单标签时生成并输出一个令牌值。 这个特性可以通过编辑你的主配置文件。为了堤防跨站脚本XSS的攻击,Yii提供了另外一个叫做 HtmlPurifier 的辅助类。 这个类有一个名为 process 的静态方法, 而它将会使用同名的 流行过滤器库 来过滤你的输出。
Yii 也包含了随时就绪的用于用户认证和授权的类。 授权被分成了两个类型: ACF (访问控制过滤器) 和RBAC (基于角色访问的控制)。
5. 缩短开发时间
大多数的项目都包含了重复的任务,没有人想把时间浪费在这些重复工作上面。Yii 提供了一些工具来帮助你在这些任务上花费更少的时间,把大多数时间都用在定制应用来满足你客户的需求上。其中最强大的一个工具就是“Gii”。Gii是一个基于web脚手架代码工具,它可以让你快速的创建一个代码模板包括Models,Controllers,Forms,Modules,Extensions以及CRUD controller actions and views。
6. 易通过调整获得更好的性能
所有人都知道一个慢吞吞的网站会造就许多心怀不满的用户, 因此Yii为你提供了一些工具来帮助你让应用程序获得更快的速度。所有的Yii缓存组件都扩展自 yii/caching/Cache, 它能让你在使用一个公共API的同时选择任意某一个缓存系统。 你甚至可以同时注册多个高速缓存组件。 Yii 当前支持数据库和文件系统缓存, 还有 APC, Memcache, Redis等等。
说明: 跟任何好的框架类似,Yii可以帮助你快速的创建现代的web应用程序,并确保它们表现的良好。 它能通过为你代劳一些体力活,来促使你创建安全并且可测试的网站。 你可以简单的使用到他们所提供的大多数特性,或者你也可以修改它们以适应你自己的需要。