yii2和laravel比较
yii2和laravel比较
一、总结
一句话总结:
开发速度两者相当:laravel的artisan工具和yii的gii有异曲同工的效果,借助于artisan工具,可以快速创建控制器、模型和路由等。
代码的可读性Yii略胜一筹:laravel有点设计过度,laravel的facade模式让阅读vendor下的源代码有点坑,不少类在IDE里不借助第三方组件是无法跳转阅读源码的。
开源生态圈方面lavarel优:laravel社区比较活跃,资源比较丰富,一些第三方的工具都能在github上找到
1、Yii 当前有两个主要版本:1.1 和 2.0 介绍?
1.1 版是上代的老版本,现在处于维护状态。
2.0 版是一个完全重写的版本,采用了最新的技术和协议,包括依赖包管理器 Composer、PHP 代码规范 PSR、命名空间、Traits等等。
2、设计模式如何进阶学习?
可以直接看lavarel或者yii的源码,里面用了很多设计模式
3、Yii和lavarel框架总结?
yii的优势是非常良好的扩展性和极其稳定的性能,
laravel的优势是比较好写出工整便于维护的的代码,这源自于其卓越的设计模式,天生为大型项目而生
二、yii2和laravel哪个框架代表着PHP的未来?
参考:yii2和laravel哪个框架代表着PHP的未来?-程序员-梁巨才个人博客
https://www.liangjucai.com/article/329
yii2是美籍华人薛强开发的高性能,基于组件的 PHP 框架,用于快速开发现代 Web 应用程序。Yii 当前有两个主要版本:1.1 和 2.0。 1.1 版是上代的老版本,现在处于维护状态。2.0 版是一个完全重写的版本,采用了最新的技术和协议,包括依赖包管理器 Composer、PHP 代码规范 PSR、命名空间、Traits等等。 2.0 版代表新一代框架,以下写到yii也是专指yii2.0。
laravel号称是为WEB艺术家创造的简洁、优雅的PHP开发框架,它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。
1、从开发速度方面比较,借助于gii脚手架,可以快速生成代码,也就是说搭建一个可以增删改查的系统可能一行代码都不用写,而且集成了jquery和bootstrap,特效和样式基本也不需要写了,这对于设计和审美能力普遍较差的后端程序员来说简直是一大福利。而laravel的artisan工具和yii的gii有异曲同工的效果,借助于artisan工具,可以快速创建控制器、模型和路由等。这点上yii和laravel各有千秋,不分上下。不过在前后端完全的分离的趋势下,yii2前后端的耦合的还是有些重了。
2、从代码的可读性方面比较,yii不会为了刻板地遵照某种设计模式而对代码进行过度的设计。而反观laravel有点设计过度,laravel的facade模式让阅读vendor下的源代码有点坑,不少类在IDE里不借助第三方组件是无法跳转阅读源码的。这点上yii要比laravel略胜一筹。
3、从开源生态圈方面比较,laravel社区比较活跃,资源比较丰富,一些第三方的工具都能在github上找到,而Yii因为人少,稍微偏门一点的就少,这点上laravel要比yii略胜一筹。
总体而言,yii和laravel目前来看,都是php最好的框架,yii的优势是非常良好的扩展性和极其稳定的性能,laravel的优势是比较好写出工整便于维护的的代码,这源自于其卓越的设计模式,天生为大型项目而生。具体用哪个框架看团队、公司的需求~
yii2和laravel比较的更多相关文章
- composer安装yii2或者laravel报错
大概的信息就是提示让登陆github,然后就报错了 Could not fetch https://api.github.com/authorizations, enter your GitHub c ...
- tp5, laravel, yii2我该选择哪个
为什么写这篇文章 我个人有一个技术群,里面学什么框架的都有,经常会有人问 某某功能 在 哪个框架怎么实现,用什么框架实现更好,说道这里我大家讲一个同类型问题的笑话 某女:你能让这个论坛的人都吵起来,我 ...
- composer php依赖管理工具
#composer是什么 Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们. composer出现之前我们php项目依赖管理大部分都是手动 ...
- 七大php主流框架,你用过几个?
在php中,我们最常用的框架有七个,分别是Yii2.Laravel.Yaf.Thinkphp.Code Igniter.Zend Framework以及CakePHP,今天我们就来详细介绍一下他们.一 ...
- 【转】PHP框架性能测试报告 - ThinkPHP 3.2.3 Laravel 5.2 Yii2.0.5
作为一个PHP开发者,而且是初创企业团队的技术开发者,选择开发框架是个很艰难的事情. 用ThinkPHP的话,招聘一个刚从培训机构出来的开发者就可以上手了,但是性能和后期代码解耦是个让人头疼的事情.不 ...
- 【nginx,apache】thinkphp ,laravel,yii2开发运行环境搭建
缘由 经常会有人问xx框架怎么配置运行环境,这里我就给贴出吉祥三宝(Yii2,Laravel5,Thinkphp5 )的Nginx和Apache的配置,供大家参考 Nginx Yii2 server ...
- PHP框架(如:laravel、yii2、thinkPHP5)中统一异常处理及统一日志打印
背景: 现在写接口服务应用有一个很通用的需求,想通过日志.或者监控的形式监测的接口的运行情况,比如耗时.请求参数.响应结果.和前端联调接口时或者排查线上问题时日志必不可少,特别是现场日志. 应用运行时 ...
- laravel安装学习步骤
在看知乎比较php框架的优劣的时候提到为什么laravel这么好国内用的少,还有就是yii2,有人提到原因就是composer在国内无法使用.这制约了使用composer进行包管理的框架在国内的传播和 ...
- 我 && yii2 (路由优化)
今天配置了一下yii2 的路由,用 /index.php?r=... 这样的路由,实在是不太习惯,所以我便试着把yii2 的路由,写成laravel 那般,以下为详情 1.环境介绍 lnmp php5 ...
随机推荐
- stl vector创建二维数组
vector<vector<); for (auto it = v.begin(); it != v.end(); it++) { ; (*it).reserve();//预留空间为5,但 ...
- 模拟赛T5 : domino ——深搜+剪枝+位运算优化
这道题涉及的知识点有点多... 所以还是比较有意思的. domino 描述 迈克生日那天收到一张 N*N 的表格(1 ≤ N ≤ 2000),每个格子里有一个非 负整数(整数范围 0~1000),迈克 ...
- 身份证验证的js
function isIdCardNo(num) { num = num.toUpperCase(); //身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能 ...
- 【报错】Validation failed for object='userLogin'. Error count: 1
提交表单之后: Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing ...
- Pytest+Allure2+Jenkins搭建
前置: (1)安装Python3(这里版本为3.7) (2)搭建Jenkins环境 一.安装pytest 直接使用pip安装(这里由于笔者的环境同时安装了Python2和Python3,所以在pyth ...
- P3740 [HAOI2014]贴海报
题目描述 Bytetown城市要进行市长竞选,所有的选民可以畅所欲言地对竞选市长的候选人发表言论.为了统一管理,城市委员会为选民准备了一个张贴海报的electoral墙. 张贴规则如下: electo ...
- Linux scp常用命令
Linux scp命令用于Linux之间复制文件和目录. scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令. 1.从本地复制到远程 命令格式: ...
- 完美的Linux之【navi】使用笔记
今天要说的是才上线才两天,就已经获得超过1000星.开发者是一位来自巴西的小哥Denis Isidoro. 开发的工具navi Linux用户的日常困惑 新命令 用完就忘 ? 一时想不起来命令的单词怎 ...
- Windows程序设计--(二)Unicode 简介
2.2 宽字符和C语言 2.2.2 更宽的字符 在C语言中的宽字符正是基于short型数据的, 这一数据类型在头文件WCHAR.H中的定义为: typedef unsigned short wchar ...
- JS中对象数据类型的基本结构和操作
Object类型 ECMAScript中的队形其实就是一组数据和功能的集合.对象可以通过执行new操作符后跟要创建的对象类型的名称来创建.而创建Object类型的示例并为其添加属性和(或)方法,就可以 ...